HTTP-Methoden und Datensenden
curl
unterstützt verschiedene HTTP-Methoden über die Standard-GET-Methode hinaus. In diesem Schritt lernen Sie, wie Sie verschiedene HTTP-Methoden verwenden und Daten mit Ihren Anfragen senden können.
Verwenden der POST-Methode
Die POST-Methode wird üblicherweise verwendet, um Daten an einen Server zu senden. Sie können die -X
-Option verwenden, um die HTTP-Methode anzugeben, und die -d
-Option, um die Daten bereitzustellen. Versuchen wir es:
curl -X POST -d "name=John&age=25" https://httpbin.org/post
Dieser Befehl sendet eine POST-Anfrage mit Formulardaten an httpbin.org. Die Antwort sollte die von Ihnen gesendeten Daten zurückgeben:
{
"args": {},
"data": "",
"files": {},
"form": {
"age": "25",
"name": "John"
},
"headers": {
"Accept": "*/*",
"Content-Length": "16",
"Content-Type": "application/x-www-form-urlencoded",
"Host": "httpbin.org",
"User-Agent": "curl/7.81.0",
"X-Amzn-Trace-Id": "Root=1-65b..."
},
"json": null,
"origin": "your-ip-address",
"url": "https://httpbin.org/post"
}
Senden von JSON-Daten
Um JSON-Daten zu senden, müssen Sie den Content-Type-Header angeben. Führen Sie aus:
curl -X POST -H "Content-Type: application/json" -d '{"name":"John","age":25}' https://httpbin.org/post
Die Antwort sollte Ihre JSON-Daten enthalten:
{
"args": {},
"data": "{\"name\":\"John\",\"age\":25}",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Content-Length": "24",
"Content-Type": "application/json",
"Host": "httpbin.org",
"User-Agent": "curl/7.81.0",
"X-Amzn-Trace-Id": "Root=1-65b..."
},
"json": {
"age": 25,
"name": "John"
},
"origin": "your-ip-address",
"url": "https://httpbin.org/post"
}
Verwenden anderer HTTP-Methoden
curl
unterstützt alle Standard-HTTP-Methoden. Versuchen wir eine PUT-Anfrage:
curl -X PUT -d "data=example" https://httpbin.org/put
Sie können auch eine DELETE-Anfrage versuchen:
curl -X DELETE https://httpbin.org/delete
Jeder dieser Befehle gibt eine Antwort zurück, die die Details Ihrer Anfrage zeigt.
Speichern wir die Ausgabe einer POST-Anfrage in einer Datei:
curl -X POST -d "name=John&age=25" -o data/post_response.json https://httpbin.org/post
Überprüfen Sie, ob die Datei erstellt wurde:
ls -l data/post_response.json
Und überprüfen Sie ihren Inhalt:
cat data/post_response.json
Sie sollten die JSON-Antwort von httpbin.org sehen, ähnlich wie zuvor gezeigt.