So verwenden Sie es
- Fügen Sie einen curl-Befehl in curl-Befehl ein. Behalten Sie die Anführungszeichen um Werte mit Leerzeichen.
- Lesen Sie Was die Übersetzung getan hat ab und prüfen Sie jede Option: die Methode, die Abfragezeichenkette, den Körper und die Header.
- Kopieren Sie den Python-Code in Ihr Skript, in dem requests installiert ist, oder den JavaScript-fetch-Code in eine Seite.
- Erscheint ein Hinweis oder eine Fehlermeldung, korrigieren Sie zuerst den Befehl und kopieren Sie danach den Code erneut.
Welche curl-Optionen der Rechner liest
Der Rechner liest die Optionen, die die meisten Anfragen brauchen. Jede ändert den Python-Aufruf auf eine bekannte Weise. Jede andere Option bricht die Übersetzung mit einer Meldung ab, daher wird nichts geraten.
- -X und --request setzen die Methode, wie geschrieben. Laut Handbuch ändert sich damit nur das gesendete Wort.
- -H und --header fügen Header hinzu. Eine Zeile wie X-Flag; sendet einen leeren Wert, und -H mit einem leeren Wert nach dem Doppelpunkt entfernt einen Header.
- -d, --data, --data-raw und --data-binary setzen den Körper. Mehrere -d-Werte werden mit & verbunden. Mit -G werden sie stattdessen zur Abfragezeichenkette.
- -G und --get, -I und --head sowie -L und --location ändern die Methode oder den Umgang mit Weiterleitungen.
- -u und --user, -A und --user-agent sowie -b und --cookie setzen das Auth-Tupel, den User-Agent-Header und den Cookie-Header.
- --json sendet den Wert als Körper und setzt die JSON-Header, die -H überschreiben kann.
Wie der Befehl gelesen wird
Der Text wird in Wörter zerlegt, so wie eine POSIX-Shell es tut. Einfache Anführungszeichen behalten jedes Zeichen. In doppelten Anführungszeichen maskiert ein Backslash nur die Zeichen $, Backtick, doppeltes Anführungszeichen, Backslash und Zeilenumbruch. Ein Backslash am Zeilenende verbindet die Zeile mit der nächsten. Shell-Ersetzungen wie $HOME werden nicht ausgeführt, daher werden solche Werte als Fehler gemeldet.
Was der Rechner nicht prüft
- Er sendet die Anfrage nicht, daher kann er nicht sagen, ob der Server sie annimmt.
- Ein Browser wendet für fetch seine Regeln für ursprungsübergreifende Anfragen (CORS) an. Eine Anfrage an eine andere Seite kann dort blockiert werden, auch wenn derselbe Befehl im Terminal funktioniert. Der Rechner prüft das nicht.
- Er öffnet keine Dateien, deren Name mit @ beginnt, und er liest keine Cookie-Dateien.
- Er schreibt nur Python. Der Code nutzt die Bibliothek requests, die Sie separat installieren.
Rechenbeispiel: ein PUT mit JSON-Körper
Der Befehl sendet ein PUT an ein Element mit einem JSON-Körper. Die Methode kommt von -X, der Header von -H und der Körper von -d. Der Python-Aufruf hat dieselben drei Teile, und die Liste der Schritte zeigt, welche Option welchen Wert ergab.
| curl-Option | Python-Argument | Wert im Code |
|---|---|---|
| -X PUT | method | 'PUT' |
| -H 'Content-Type: application/json' | headers | 'Content-Type': 'application/json' |
| -d '{"name": "Ada"}' | data | '{"name": "Ada"}' |
Häufig gestellte Fragen
Warum nutzt der Code requests und nicht eine andere Bibliothek?
requests ist die Python-Bibliothek, in die der Rechner übersetzt. Ihre Funktion request nimmt Methode, URL, Header, Daten und Authentifizierung in einem Aufruf entgegen. Derselbe Aufruf funktioniert für jede Methode, die der Befehl nennt.
Warum wird meine Anfrage als POST gesendet, obwohl ich kein -X geschrieben habe?
Das curl-Handbuch sagt, dass -d POST verwendet, und auch --json sendet ein POST. Schreiben Sie -X mit der gewünschten Methode, etwa -X PUT, um das gesendete Wort zu ändern.
Was macht -G bei der Übersetzung?
Es verschiebt die -d-Daten als Abfragezeichenkette in die URL und macht die Anfrage zu einem GET, wie das Handbuch beschreibt. Der Python-Aufruf hat dann die vollständige URL und keinen Körper.
Werden die Passwörter in meinem Befehl irgendwohin gesendet?
Nein. Der Befehl wird in Ihrem Browser gelesen, und nichts wird gespeichert oder an uns gesendet. Verwenden Sie trotzdem auf einer Seite, die Sie nicht selbst kontrollieren, nur ein Test-Passwort oder ein Test-Token.
Warum erwähnt die Ausgabe Weiterleitungen?
curl folgt Weiterleitungen nur mit -L. requests folgt ihnen standardmäßig für jede Methode, und fetch ebenso. Der Hinweis zeigt daher, wie Sie einen curl-Aufruf ohne -L nachbilden.
Kann der Rechner Daten aus einer Datei lesen, die mit @ benannt ist?
Nein. Der Rechner öffnet keine Dateien, daher wird ein @-Wert als Fehler gemeldet. Fügen Sie die Daten selbst in den Befehl ein.
Quellen
- curl-Handbuch (englisch): -X, -H, -d, -G, -I, -u, -A, -b, -L, --json und --basic
- POSIX Shell Command Language (englisch), Abschnitt 2.2 Quoting
- Requests (englisch): API-Referenz für request, get, post und head
Zahlen und Text zuletzt geprüft: Dienstag, 10. November 2026.