712 Stimmen

Nur Antwort-Header von HTTP POST mit cURL erhalten

Man kann nur die Kopfzeilen mit HTTP HEAD anfordern, als Option -I において curl(1) .

$ curl -I /

Lange HTML-Antwortkörper sind in der Befehlszeile nur schwer zu erhalten, daher möchte ich nur den Header als Rückmeldung für meine POST-Anfragen erhalten. HEAD und POST sind jedoch zwei verschiedene Methoden.

Wie bringe ich cURL dazu, bei einer POST-Anfrage nur die Antwort-Header anzuzeigen?

24voto

kaiser Punkte 20765

Viel einfacher - auch das folgt Links.

curl -IL http://example.com/in-the-shadows

15voto

Während die anderen Antworten nicht in allen Situationen für mich funktioniert haben, war die beste Lösung, die ich finden konnte (die Arbeit mit POST auch), entnommen aus aquí :

curl -vs 'https://some-site.com' 1> /dev/null

10voto

Frank Nocke Punkte 8618

headcurl.cmd (Windows-Version)

curl -sSkv -o NUL %* 2>&1
  • Ich möchte keinen Fortschrittsbalken -s ,
  • aber ich möchte Fehler -S ,
  • sich nicht um gültige https-Zertifikate zu kümmern -k ,
  • hohe Ausführlichkeit -v (hier geht es um die Fehlersuche, nicht wahr?),
  • keine Ausgabe (auf saubere Weise).
  • Oh, und ich möchte weiter stderr à stdout so dass ich das Ganze mit grep durchsuchen kann (da die meisten oder alle Ausgaben in stderr erscheinen)
  • %* bedeutet [alle Parameter an dieses Skript übergeben] (well( https://stackoverflow.com/a/980372/444255 ), das ist normalerweise nur ein Parameter: die URL, die Sie testen

ein Beispiel aus der Praxis (zur Behebung von Proxy-Problemen):

C:\depot>headcurl google.ch | grep -i -e http -e cache

Hostname was NOT found in DNS cache
GET HTTP://google.ch/ HTTP/1.1
HTTP/1.1 301 Moved Permanently
Location: http://www.google.ch/
Cache-Control: public, max-age=2592000
X-Cache: HIT from company.somewhere.ch
X-Cache-Lookup: HIT from company.somewhere.ch:1234

Linux-Version

für Ihre .bash_aliases / .bash_rc :

alias headcurl='curl -sSkv -o /dev/null $@  2>&1'

0voto

-D, --dump-header Schreibt die Protokoll-Header in die angegebene Datei.

   This  option  is handy to use when you want to store the headers
   that a HTTP site sends to you. Cookies from  the  headers  could
   then  be  read  in  a  second  curl  invocation by using the -b,
   --cookie option! The -c, --cookie-jar option is however a better
   way to store cookies.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X