Shinichi Nishikawa's

http リクエストをターミナルからお試しする httpie

WP JSON REST API を試してみるとき、 json のデータを綺麗に見たい。ポンと送ってHEADER 情報とレスポンスのボディを簡単に色付きで確認したい。

jkbrzt/httpie

HTTPie というコマンドラインHTTP クライアントがあるようなので使っていきたいと思います。

ツールがつまりどういうことなのかといいますと、

HTTPie: a CLI, cURL-like tool for humans

HTTPie (pronounced aitch-tee-tee-pie) is a command line HTTP client. Its goal is to make CLI interaction with web services as human-friendly as possible. It provides a simple http command that allows for sending arbitrary HTTP requests using a simple and natural syntax, and displays colorized output. HTTPie can be used for testing, debugging, and generally interacting with HTTP servers.

HTTPie: 人間のための、cURL っぽい CLI ツール

HTTPie (エイチティーティーパイと読む) はコマンドライン HTTP クライアント。ウェブサービスとの CLI でのインタラクションをできるだけ人に優しい形で実現してくれる。 http というシンプルなコマンドを使って好きな HTTP リクエストを送り、自然な構文の色付きアウトプットを出します。テストやデバッグのほか HTTP サーバとの一般的なやり取りに使いましょう。

というわけでした。この投稿の一番上の画像に2枚のターミナルの画像があると重います。後ろ側にあるのは curlでリクエストを送っているところで、手前のが httpie を使ったところです。簡単なコマンドで見やすいよ!ということですね。

以下、ローカルの WordPress に対して諸々のリクエストを送ってみたところ。

GET リクエスト

http wp-api.dev/wp-json

Contact Form 7 へメールを送ってみた

$ http -v --form wp-api.dev/contact-form-7-test/ your-name="Shinichi Nishikawa" your-email=shinichi.nishikawa@example.com your-subject=test your-message="This is my message. Hello hello hello." _wpcf7=6 _wpcf7_version=4.3.1 _wpcf7_locale=en_US _wpcf7_unit_tag=wpcf7-f6-p7-o1 _wpnonce=9fc5ff2bd7

上記は Contact Form 7 が出しているフォームのソースから色々コピペして、 name=value というパラメータを付けて –form フラグを付けてリクエストを送ったところ。 POST メソッド付けてないけど動いた(あとで試したらPOST 付けても動いたけど、GETつけたら動かないので –form をつけたら勝手にPOSTにしてるのかな)。

メールが届いた。

覚えておきたいオプションなど

というわけで、デバッグに困らないツールということでこれから使っていきたいと思います。 Glossary | WP REST API v2 Documentation には Chrome や Firefox のためのテストツールも紹介されていたので興味のある方はそちらも見てみてはいかがでしょうか?

モバイルバージョンを終了