HTTPie: un'ottima alternativa a cURL
Attraverso la mia rivista preferita (Linux Pro) sono venuto a conoscenza di quest'ottimo programma: HTTPie.
Sostanzialmente possiamo definirlo come una alternativa più easy a cURL.
Dovrebbe essere disponibile tranquillamente nei repo; su Archlinux:
# pacman -Sy httpie
Una volta installato, per vedere le varie opzioni disponibili, basterà dare il comando senza opzioni:
$ http
usage: http [--json] [--form] [--pretty {all,colors,format,none}]
[--style STYLE] [--print WHAT] [--verbose] [--headers] [--body]
[--stream] [--output FILE] [--download] [--continue]
[--session SESSION_NAME_OR_PATH | --session-read-only SESSION_NAME_OR_PATH]
[--auth USER[:PASS]] [--auth-type {basic,digest}]
[--proxy PROTOCOL:PROXY_URL] [--follow] [--verify VERIFY]
[--timeout SECONDS] [--check-status] [--ignore-stdin] [--help]
[--version] [--traceback] [--debug]
[METHOD] URL [REQUEST_ITEM [REQUEST_ITEM ...]]
http: error: the following arguments are required: URL, REQUEST_ITEM
Sennò potete sempre usare l'help:
$ http --help
A questo punto vediamo qualche esempio.
Un primo banale:
$ http https://www.mattepuffo.com/blog/
Se, invece, vogliamo ad esempio testare un web service che resituisce i risultato in formato JSON:
$ http --json http://www.sito.com/file.php
L'output sarà strutturato in formato JSON senza che dobbiate fare nulla.
Volendo possiamo fare anche il submit di un form:
$ http -f POST sito.com hello=World
Notate che abbiamo indicato il metodo (POST) e il valore.
Per eseguire un upload:
$ http sito.com < file
Per fare un download:
$ http sito.com/file > file
Ci stanno un'altra marea di opzioni e funzionalità avanzate che potete vedere al link postato ad inizio pagina; qui vi ho mostrato quelle basiche.
Provate ad ottenere gli stessi risulati con cURL per vedere le differenze.
Ciao!!
linux archlinux http httpie curl json
Commentami!