... ohne zu entkommen und noch eine Magie
Ist das wirklich?
Unter Option wie --raw-payload
Ja, alle über STDIN
Daten werden als Anforderungshauptteil gesendet, z.
$ echo 'raw payload' | http httpbin.org/post
Danke, Jakub!
Abgesehen von --ignore-stdin
dies in http --help
. Könnte es eine gute Ergänzung zum Hilfetext sein? (Auch tolle Arbeit!)
Sie können auch http httpbin.org/post <<< 'raw payload'
Aber,
$ echo 'running' | http -v put localhost:5000/state
sendet Content-Type: application/json
Header.
PUT /state HTTP/1.1
Accept: application/json, */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Length: 8
Content-Type: application/json
Host: localhost:5000
User-Agent: HTTPie/0.9.9
running
und eine ordnungsgemäße Implementierung auf der Empfangsseite versucht natürlich, dies als JSON zu analysieren, und schlägt fehl.
@furkanmustafa application/json
ist der Standardinhaltstyp, der von httpie
.
Wenn Sie den Inhaltstyp in Ihrer Anfrage explizit angeben, wird dieser behoben:
$ echo 'running' |http httpbin.org/post Content-Type:text/plain
oder sogar beim Senden von komprimierten Inhalten:
$ echo 'running' |gzip |http httpbin.org/post Content-Type:text/plain Content-Encoding:gzip
Sie können auch
http httpbin.org/post <<< 'raw payload'
schien nicht mit Powershell zu arbeiten, 'rawBody' | http post :8080/api/events
funktionierte für mich
Hilfreichster Kommentar
Ja, alle über
STDIN
Daten werden als Anforderungshauptteil gesendet, z.https://github.com/jakubroztocil/httpie#redirected -input