curl
curl steht für „Client for URLs“ und ist ein Befehlszeilentool, das verwendet wird, um Daten über verschiedene Protokolle wie HTTP, FTP, SMTP usw. zu übertragen.
Nachfolgend eine Auflistung der wichtigsten Parameter. Gefühlt 500 weitere sind in der cURL-Dokumentation aufgelistet ;).
HTTP Methode
Die HTTP Methode wird mit dem Parameter -X oder –request angegeben. Je nach verwendetem Parameter wird hier GET oder POST automatisch verwendet, wenn nicht explizit angegeben.
curl -X POST -H "Content-Type: application/json" -d '{"Name": "Stefan"}'
Header
Header werden dem Parameter -H oder –header angegeben.
curl -X POST -H "Content-Type: application/json" -d '{"Name": "Stefan"}'
Body
Der Body wird mit dem Parameter -d oder –data angegeben.
curl -X POST -H "Content-Type: application/json" -d '{"Name": "Stefan"}'
Alternativ kann als Body auch eine Datei angegeben werden, indem das @-Zeichen als Präfix verwendet wird.
curl -X POST -H "Content-Type: application/json" -d @datei.txt
Basic Authentication
Benutzer und Passwort für Basic Authentication werden mit dem Parameter -u oder –user angegeben.
curl -u "benutzer:passwort"
Antwort in Datei speichern
Dies kann mit dem Parameter -o oder –output gemacht werden.
curl -o datei.html https://www.codigo.at
Alternativ kann der Dateiname verwendet werden, der im Content-Disposition Header übermittelt wird.
curl -OJ https://www.codigo.at
Redirects
Um Redirects zu berücksichtigen, muss der Parameter -L oder –location angegeben werden
curl -L https://www.codigo.at
Zertifikatsfehler ignorieren
Wenn Fehler in der Zertifikatskette ignoriert werden sollen, kann dies mit dem Parameter -k oder –insecure gemacht werden.
curl -k https://www.codigo.at
Cookies
Cookies können mit dem Parameter -b oder –cookie angegeben werden.
curl -b "sessionid=123123" https://www.codigo.at
Alternativ kann auch ein Dateiname angegeben werden.
Um empfangene Cookies in eine Datei zu speichern, kann der Parameter -c oder –cookie-jar verwendet werden.
curl -c mycookie.txt https://www.codigo.at
Silent-Modus
Wenn die Fortschrittsanzeige nicht angezeigt werden soll, muss der Parameter -s oder –silent angegeben werden. Hiermit werden allerdings auch etwaige Fehler nicht ausgegeben!
curl -s https://www.codigo.at
Datei hochladen
Hierfür gibt es den Parameter -T oder –upload-file.
curl -X POST -T datei.txt https://www.codigo.at
Form
Forms können mit dem Parameter -F oder –form übergeben werden. Dieser Parameter kann auch mehrmals verwendet werden.
curl -X POST -F name=John -F shoesize=11 https://codigo.at
Es können auch Dateien angegeben werden. Diese benötigen als Präfix das @-Zeichen.
curl -F [email protected] https://example.com/upload.cgi
Detaillierte Ausgabe
Für eine detaillierte Ausgabe muss der Parameter -v oder –verbose angegeben werden.
curl -v https://www.codigo.at