HTTPie - Curl コマンドや Wget コマンドに似た最新の HTTP クライアント
HTTPie (エイチ ティー ティー パイと発音します) は、cURL に似た最新のユーザー フレンドリーな、Python で書かれたクロスプラットフォーム コマンド ライン HTTP クライアントです。これは、CLI と Web サービスの対話をできるだけ簡単かつユーザーフレンドリーにするように設計されています。
これには、ユーザーが簡単で自然な構文を使用して任意の HTTP リクエストを送信できるようにする単純な http コマンドがあります。これは主にテスト、問題のないデバッグ、および主に HTTP サーバー、Web サービス、および RESTful API との対話に使用されます。
- HTTPie は直感的な UI を備えており、JSON をサポートしています。
- 表現力豊かで直感的なコマンド構文。
- 構文の強調表示、フォーマットおよび色分けされた端末出力。
- HTTPS、プロキシ、認証のサポート。
- フォームとファイルのアップロードのサポート。
- 任意のリクエスト データとヘッダーのサポート。
- Wget のようなダウンロードと拡張機能。
- ython 2.7 および 3.x をサポートします。
この記事では、Linux で httpie をインストールして使用する方法と、いくつかの基本的な例を示します。
Linux で HTTPie をインストールして使用する方法
ほとんどの Linux ディストリビューションでは、デフォルトのシステム パッケージ マネージャーを使用して簡単にインストールできるHTTPie パッケージが提供されています。次に例を示します。
apt-get install httpie [On Debian/Ubuntu]
dnf install httpie [On Fedora]
yum install httpie [On CentOS/RHEL]
pacman -S httpie [On Arch Linux]
インストールしたら、httpie を使用するための構文は次のとおりです。
http [options] [METHOD] URL [ITEM [ITEM]]
httpie の最も基本的な使用法は、URL を引数として指定することです。
http example.com
次に、httpie コマンドの基本的な使用法を例とともに見てみましょう。
HTTPメソッドを送信する
リクエストで HTTP メソッドを送信できます。たとえば、指定したリソースからデータをリクエストするために使用されるGET メソッドを送信します。 HTTP メソッドの名前は URL 引数の直前にあることに注意してください。
http GET tecmint.lan
ファイルをアップロードする
この例では、入力リダイレクトを使用してファイルを transfer.sh にアップロードする方法を示します。
http https://transfer.sh < file.txt
ファイルをダウンロードする
図のようにファイルをダウンロードできます。
http https://transfer.sh/Vq3Kg/file.txt > file.txt #using output redirection
OR
http --download https://transfer.sh/Vq3Kg/file.txt #using wget format
フォームを送信する
図に示すように、データをフォームに送信することもできます。
http --form POST tecmint.lan date='Hello World'
リクエストの詳細を表示する
送信されているリクエストを確認するには、たとえば、-v
オプションを使用します。
http -v --form POST tecmint.lan date='Hello World'
基本的なHTTP認証
HTTPie は、次の形式で CLI からの基本的な HTTP 認証もサポートします。
http -a username:password http://tecmint.lan/admin/
カスタムHTTPヘッダー
ヘッダー: 値 表記を使用してカスタム HTTP ヘッダーを定義することもできます。ヘッダーを返す次の URL を使用してこれをテストできます。ここでは、「strong>TEST 1.0」というカスタム ユーザー エージェントを定義しました。
http GET https://httpbin.org/headers User-Agent:'TEST 1.0'
実行して使用オプションの完全なリストを表示します。
http --help
OR
man ttp
その他の使用例は、HTTPie Github リポジトリ (https://github.com/jakubroztocil/httpie) から見つけることができます。
HTTPie は、cURL に似た、シンプルで自然な構文を備えた最新のユーザーフレンドリーなコマンドライン HTTP クライアントで、色分けされた出力を表示します。この記事では、Linux に httpie をインストールして使用する方法を説明しました。ご質問がある場合は、以下のコメントフォームからお問い合わせください。