POSTMANとは?
APIのリクエストレスポンスを検証するためのツール。要するに、CURLコマンドをUIにしたもの。
事前処理や事後処理をjavascriptで記述したり、独自の環境変数を設定したりすることもできる。
このため、AIP1で受け取った値をAPI2のパラメータとして設定するなど、実機と同じ挙動を再現するのが容易になっている。
POSTMANの環境変数を使用したり、POSTMANに事前に用意されているグローバルメソッドを使用したりする場合、「pm」という名前のPOSTMANのグローバルオブジェクトにアクセスして操作することができる。
Pre-request Scriptタブ
API処理前に実行したいコードを記述する。
Testsタブ
処理実行後に実行したいコードを記述する。
以下、APIを送信し、取得したレスポンスのパラメータをグローバル変数にセットする例。
var jsonData = JSON.parse(responseBody);
var param = jsonData.param;
if (param && param!= "")
{
pm.globals.set("globalParamName", param);
}
環境変数の設定
POSTMANのバージョンによるが、サイドバーのEnvironments、または、右上にある目の付いたアイコンから設定可能。
リクエストレスポンスをコンソールで表示
メニューバー>View>Show Postman Console
エクスポートとインポート
APIの情報や環境変数の情報をエクスポート・インポートできる。
- APIのエクスポート:コレクションを右クリック>export
- 環境変数のエクスポート:サイドバー>environments>環境変数を右クリックエクスポート
- インポート:メニューバーのImport
Appendix
Cookie
右上の方にある、Cookiesから、POSTMANに現在設定されているCookieが確認できる。
POSTMANと、ブラウザ(実機)は、APIから見れば同じ立ち位置となる。
ブラウザの挙動と同じように、APIからのレスポンスに”Set-Cookie”ヘッダーがあれば、ユーザーエージェントであるPOSTMANが解読してCookieとして設定している。
リクエスト送信時もブラウザの挙動と同様で、POSTMANにCookieが設定されている状態であれば、リクエストヘッダーに”Cookie”ヘッダーが自動的に付与されて送信される。
連続実行
作成してあるコレクションの右側の3点リーダをクリック>run collection
文字化け
PostManのレスポンスBODYはデフォルトではJSON形式で表示される。
ユニコードでエンコードされた全角文字などが混ざっていても、読み替えて正常に表示してくれる。
文字化けしたままの生のデータを見たい場合はRawタブから確認することができる。
コメント