ぼっちエンジニアのリーンなブログ

リーン・スタートアップ、プログラミングなどについてまとめます

最強のREST APIクライアントPawの使い方

最近使って感動したPawというREST API Client

日本語で記事を探しても一つも出てこなかったこのソフトですが、とても使いやすくて便利なので紹介します

Macで開発をしているエンジニアはぜひ入れましょう!

Pawの概要

HTTP通信を使ってAPIを叩きたいときに利用するRESTクライアントです

Twitter, FacebookなどのAPIを叩いて試したいときはもちろん、自分で開発したサーバの動作確認、テストなどに利用することができます

有料($29.90 2015年12月時点)ですが、仕事で使うという方には有料でも便利なものを利用すべきです

同種のソフトウェアとして、Chrome拡張のAdvanced REST clientPostmanがあります

無料で使いたいという方にはこれらが良いと思います

Pawの特徴

私がPawを推す最大の理由は、他のリクエストのTokenやCookie情報を使って別のリクエストを送ることができる点です

つまり、ログイン情報をいちいち変更しなくてもリクエストが送れるのです

Advanced REST ClientやPostmanを使っていて不便な点は、例えばログインが必要なAPIを利用する場合に、

  1. まずログインのAPIを叩く
  2. レスポンスからトークン情報をコピー
  3. 動作確認したいリクエストのヘッダにペースト
  4. リクエストを実行

という手間がかかっていました。

なんと面倒なことか

でも、Pawを使えば、ここの2,3の処理を実施する必要はありません

さらにCode Generation(様々な言語のコードを生成してくれる)や環境ごとに変数を設定できるなど便利機能があり、これを使うともうこれ以外使えなくなります

インストール方法

下記サイトでDownload Free Trialをクリック!

luckymarmot.com

Pawの使い方

基本的な使い方

  • Pawの画面構成 Pawの画面は下図のような感じです f:id:lean-blog:20151220183655p:plain

  • リクエストの作成 メソッド、URL、ヘッダ、ボディを設定して実行することができます

下図はヘッダの設定方法 f:id:lean-blog:20151220234641p:plain

下図はボディの設定方法。JSONを簡単に作成できます f:id:lean-blog:20151220234649p:plain

前のリクエストからトークンを取得する

今回は、ログインのレスポンスヘッダに設定されたトークンを利用する場合を例に説明します

実際に利用したRailsプロジェクトを書いておくので必要な方はクローンして利用してください

github.com

Pawの設定ファイルもGistにあげておいたので、必要な方はどうぞ。(内容をコピーして.pawファイルにして読み込ませればOK)

Pawの設定ファイル · GitHub

ログインのレスポンスヘッダのトークンを利用する方法

まず最初にログインのリクエストを実行します。 f:id:lean-blog:20151220235916p:plain

次に、リクエストを作成し、ヘッダの入力箇所で右クリック→Response→ Response Headerと選択します f:id:lean-blog:20151220235858p:plain

そして、利用したいリクエスト(ここではLogin)を選択し、利用したいヘッダ(ここではUid)を選択します f:id:lean-blog:20151220235907p:plain

これだけで簡単にログインの情報を利用できます

超便利ですね!

環境ごとにURLを分ける

次は、Pawの便利機能「環境変数」を利用方法を紹介します

この機能を利用すれば、開発環境、ステージング、本番環境でリクエストするURLやログインしたい情報が異なる場合でも一つのリクエストを作るだけでアクセスできます

利用方法

下図にしたがって歯車をクリック f:id:lean-blog:20151221001350p:plain

ここで、hostという変数を作ってみます。ここでは開発環境を想定してlocalhostを設定

f:id:lean-blog:20151221001719p:plain

新しい環境(Environment)を作成します f:id:lean-blog:20151221001857p:plain

本番環境を想定してProductionとしました f:id:lean-blog:20151221001936p:plain

リクエストを作成し、URLのところにhttps://まで入力して右クリック→Environment→Environment Variable→hostを選択 f:id:lean-blog:20151221002227p:plain

これで環境ごとにhostが変わるようになりました

環境は、下図のように選択できます

f:id:lean-blog:20151221002437p:plain

これで環境ごとにリクエストを作る手間が減ります!

超便利!

まとめ

Pawは、最強のREST APIクライアントということが理解できたかと思います

特筆すべきは、下記の二点です

  • ログイン情報で取得した認証情報を利用するリクエストを作ることができ、テストするたびに発生していたコピペ作業がなくなります!
  • 開発環境、ステージング、本番環境ごとにリクエストを作る必要がなくなり、リクエストがすっきり!

Pawにはもっと色々と便利な要素がありますが、それはまた次の機会にすることにします!