Ma kasutan Linuxi käsureal curl
, et esitada HTTP-päringuid. Vastusekehad trükitakse standardväljundisse, mis on hea, kuid ma ei näe man-lehelt, kuidas saada curl'ile vastuse HTTP staatuskood (404, 403 jne) välja printida. Kas see on võimalik?
Konkreetsem viis ainsa HTTP staatuskoodi välja printimiseks on midagi sellist:
curl -s -o /dev/null -w "%{http_code}" http://www.example.org/
Palju lihtsam töötada skriptides, kuna see ei nõua mingit analüüsimist :-)
Parameeter -I
võiks olla lisatud, et parandada vastuse laadimise jõudlust. See parameeter küsib ainult vastuse staatust/pealkirju, ilma vastuse keha allalaadimiseta.
Märkus: %{http_code}
tagastab HTTP kasuliku koormuse esimese rea.
st:
curl -s -o /dev/null -I -w "%{http_code}" http://www.example.org/
See peaks teie jaoks toimima, kui veebiserver on võimeline vastama HEAD päringutele (see ei tee GET
):
curl -I http://www.example.org
Täienduseks, et lasta cURLil jälgida ümbersuunamisi (3xx staatused), lisage -L.
Kui soovite näha nii pealkirja kui ka tulemust, võite kasutada suulist suvandit verbose:
curl -v http://www.example.org
curl --verbose http://www.example.org
Seisund ilmub päises. Nt.
< Date: Tue, 04 Nov 2014 19:12:59 GMT
< Content-Type: application/json; charset=utf-8
< Status: 422 Unprocessable Entity