(続編)ApigeeでAPIプロキシを作成してみた
みなさんこんにちは!
SOMPOシステムズのAPIエンジニアです!
「今巷で話題の”Apigee”について調べてみた」の記事に続いて、実際にApigeeでAPIプロキシを作成してみたので、ご紹介します。
構成イメージ
こんな感じで作ってみました!
まずはAPIプロキシを作成
まずはAPIプロキシの作成からスタート!
「Reverse proxy」を選択して、事前に作成しておいたOpenAPI仕様を設定。
OpenAPI仕様で定義した内容が反映されるので、内容を確認し作成で完了。あっという間で驚きました!!
ポリシーを追加してみた
50以上の組み込みポリシーが準備されているので、今回は流量制御(Quota)のポリシーを追加してみました。
「Quota」を選択して追加。
ポリシーが追加されました!
自動でxmlが作成されるので、細かい設定値については修正が必要ですね。
次にAPIプロダクトを作成
今回はインターネット接続で作成するので、「Public」で設定。
ポイントは『APIプロキシ』を選択するところ!
続いてデベロッパーを作成
数項目入力するだけですぐ完了。
最後にアプリを作成
作成した『デベロッパー』を選択して先に進む。
ポイントは『APIプロダクト』を選択するところ!
リクエスト時に必要になるKey情報が確認できるようになりました!
ここまでで、デプロイ前の作業が完了。
いよいよデプロイ
環境を選択し「DEPLOY」をクリックしたら完了。
動くか確認してみた
Postmanを使ってレスポンスが返ってくるか試してみました!
Postmanは、HTTPリクエストの送信やレスポンスの内容確認、解析など、APIのテストで利用されるツールです。
以下のサイトからダウンロードできます。
『アプリ』で確認したKey情報をリクエストヘッダーに設定してリクエスト送信。
ApigeeのAPIプロキシ経由でバックエンドのアプリからレスポンスが返ってきました!
デバッグしてみた
正しくないKey情報をリクエストヘッダーに設定してリクエストを送信するとエラーになるか試してみました。
「Verify API key」のポリシーを追加して、再デプロイ。
その後APIプロキシのデバッグをスタート!
デバッグがスタートしました。
Postmanで正しくないKey情報をリクエストヘッダーに設定してリクエスト送信すると、きちんとエラーが返ってきました!
デバッグのメニューに戻るって確認すると、key情報のチェックでエラーになっていることが確認できました!
リクエストの情報を確認すると、設定されている値も確認できます。
このデバック機能はとても便利ですね!
APIエンジニアとしての考察
Apigeeはプロキシ機能に特化したAPIプラットフォームなので、バックエンドのアプリがあれば短時間ですぐに公開できることが分かりました。
(今回の設定であれば30分もかからず完了)
今回のお試しで設定したポリシーは Quota と Verify API key でしたが、実際の開発ではJSON ThreatProtection や Message Logging、OpenAPI Spec Varidation などいろいろなポリシーを設定する必要があると思います。
APIプロキシ単位で設定すると時間がかかるので、共通フローを利用するのが良さそうだなと思いました。