HTTPie - En moderne HTTP-klient svarende til Curl- og Wget-kommandoer
HTTPie (udtales aitch-tee-tee-pie) er en CURL-lignende, moderne, brugervenlig og cross-platform kommandolinje HTTP-klient skrevet i Python. Det er designet til at gøre CLI-interaktion med webservices let og så brugervenlig som muligt.
Den har en simpel http-kommando, der giver brugerne mulighed for at sende vilkårlige HTTP-anmodninger ved hjælp af en ligetil og naturlig syntaks. Det bruges primært til test, problemfri fejlfinding og hovedsagelig interaktion med HTTP-servere, webservices og RESTful API'er.
- HTTPie leveres med et intuitivt brugergrænseflade og understøtter JSON.
- Ekspressiv og intuitiv kommandosyntaks.
- Syntaksfremhævning, formateret og farvet terminaloutput.
- HTTPS, proxyer og godkendelsesunderstøttelse.
- Understøttelse af formularer og filoverførsler.
- Støtte til vilkårlige anmodningsdata og overskrifter.
- Wget-lignende downloads og udvidelser.
- Understøtter ython 2.7 og 3.x.
I denne artikel vil vi vise, hvordan du installerer og bruger httpie med nogle grundlæggende eksempler i Linux.
Sådan installeres og bruges HTTPie i Linux
De fleste Linux-distributioner leverer en HTTPie-pakke, der let kan installeres ved hjælp af standardsystempakkehåndteringen, for eksempel:
# apt-get install httpie [On Debian/Ubuntu] # dnf install httpie [On Fedora] # yum install httpie [On CentOS/RHEL] # pacman -S httpie [On Arch Linux]
Når den er installeret, er syntaksen for at bruge httpie:
$ http [options] [METHOD] URL [ITEM [ITEM]]
Den mest basale anvendelse af httpie er at give den en URL som et argument:
$ http example.com
Lad os nu se nogle grundlæggende anvendelser af httpie-kommandoen med eksempler.
Du kan sende en HTTP-metode i anmodningen, for eksempel sender vi GET-metoden, der bruges til at anmode om data fra en bestemt ressource. Bemærk, at navnet på HTTP-metoden kommer lige før URL-argumentet.
$ http GET tecmint.lan
Dette eksempel viser, hvordan man uploader en fil til transfer.sh ved hjælp af inputomdirigering.
$ http https://transfer.sh < file.txt
Du kan downloade en fil som vist.
$ http https://transfer.sh/Vq3Kg/file.txt > file.txt #using output redirection OR $ http --download https://transfer.sh/Vq3Kg/file.txt #using wget format
Du kan også indsende data til en formular som vist.
$ http --form POST tecmint.lan date='Hello World'
For at se den anmodning, der sendes, skal du f.eks. Bruge indstillingen -v
.
$ http -v --form POST tecmint.lan date='Hello World'
HTTPie understøtter også grundlæggende HTTP-godkendelse fra CLI i form:
$ http -a username:password http://tecmint.lan/admin/
Du kan også definere brugerdefinerede HTTP-overskrifter ved at bruge overskriften: Værdinotation. Vi kan teste dette ved hjælp af følgende URL, som returnerer overskrifter. Her har vi defineret en brugerdefineret bruger-agent kaldet 'stærk> TEST 1.0':
$ http GET https://httpbin.org/headers User-Agent:'TEST 1.0'
Se en komplet liste over anvendelsesmuligheder ved at køre.
$ http --help OR $ man ttp
Du kan finde flere eksempler på brug fra HTTPie Github-arkivet: https://github.com/jakubroztocil/httpie.
HTTPie er en cURL-lignende, moderne, brugervenlig kommandolinje HTTP-klient med enkel og naturlig syntaks og viser farvet output. I denne artikel har vi vist, hvordan du installerer og bruger httpie i Linux. Hvis du har spørgsmål, kan du kontakte os via nedenstående kommentarformular.