Nur Curl-Post-Daten und Header


73

Ich möchte die Header nur von einer Curl-Anfrage erhalten

curl -I www.google.com

Alles großartig. Jetzt möchte ich das tun, aber auch Postdaten übergeben:

curl -I -d'test=test' www.google.com

Aber alles was ich bekomme ist:

Warning: You can only select one HTTP request!

Hat jemand eine Idee, wie man das macht oder mache ich etwas Dummes?

Antworten:


116

Die -IOption weist curl an, eine HEAD-Anforderung auszuführen, während die -d'test=test'Option curl anweist, einen POST auszuführen, sodass Sie curl anweisen, zwei verschiedene Anforderungstypen auszuführen.

curl -s -d'test=test' -D- -o/dev/null www.google.com 

oder unter Windows:

curl -s -d'test=test' -D- -onul: www.google.com 

Soweit ich das beurteilen kann, ist dies der beste Weg, dies zu tun. Die Optionen sind:

  • -D-Speichern Sie den Header wie -folgt in der aufgelisteten Datei oder stdout, wenn er übergeben wird.
  • -o/dev/nullSenden Sie den Text an die angegebene Datei. Hier verwerfen wir den Körper, sodass wir nur die Überschriften sehen.
  • -s Lautlos (kein Fortschrittsbalken)

14
Eine Erklärung, was die Flaggen bedeuten, wäre hilfreich
Madbreaks

8
-s : Silent (kein Fortschrittsbalken) -d <Daten> : Führt einen POST mit der angegebenen Abfragezeichenfolge durch. -D <Datei> : Dump-Header in Datei (Standard, wenn - übergeben wird) -o <Datei> : Ausgabe Antwort auf Datei Das Handbuch zitiert ohnehin alle diese Flags.
Raphael

Wenn jemand will , das auf Windows läuft ersetzen Sie einfach -o/dev/nullmit -o nul(unter Windows XP getestet).
Jan Święcki

30

-dbedeutet, dass Sie Formulardaten über die POSTMethode senden . -Ibedeutet, dass Sie nur über die Metadaten über spähen HEAD.

Ich würde auch vorschlagen

  • Laden Sie /dev/nulldie Header herunter und schreiben Sie sie über -D headerfiledie Dateiheaderfile
  • Verwenden Sie -idiese Option , um die Überschriften in die Antworten aufzunehmen und alles von der ersten leeren Zeile aus zu überspringen.

Alt, ich weiß, aber ich würde vorschlagen, etwas hinzuzufügen -s, um die Ausgabe ein wenig zu bereinigen.
Wikipedia

Wow, ja -iist genau das, wonach ich denke, dass jeder sucht. Warum sind die anderen Antworten komplizierter? Ich bin sicher, dass es hier einige Nuancen gibt.
Cody Reichert
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.