LoginSignup
0
0

Apigee 学習記録

Posted at

Apigeeとは

Apigeeは、Google CloudのネイティブAPI管理プラットフォームで、APIを構築、管理、保護ができる

APIプロキシにより、プロキシレイヤーを介して、バックエンドサービスとの信頼性の高いインターフェースを簡単に作成できる

  • セキュリティ
  • レート制限
  • リソースの割り当て
  • 分析

例えば、、

  • アクセス制御
  • HTTPメソッドの制限
  • リクエストのサイズの制限
  • 認証と認可

Apigee が提供する機能

  • APIプロキシレイヤー
    バックエンドサービスと内部または外部のクライアントの間に配置される中間レイヤーです。主に、APIのセキュリティ、トラフィック管理、データの変換などができる

  • ポリシー
    APIプロキシレイヤーに追加される機能のセットで、セキュリティ、トラフィック管理、データの変換などの機能を提供します。カスタムコード、条件付きロジック、障害処理、レート制限、キャッシュ保存などができる

  • エンタープライズクラスのAPI管理ソリューション
    Apigeeは、セキュリティやトラフィック管理などの機能を組み合わせ、堅牢なAPI管理ソリューションを提供ができる

  • プロキシの変更が容易
    Apigeeのポリシーやアクションは、APIプロキシレイヤーで実装されているため、バックエンドサービスの変更ができる

Apigee を使用する主なメリット

  • API の分析情報
    • アクセスの確保やアラートの設定、APIの使用状況の分析できる
  • API の信頼性
    • バックエンドの変更をクライアントアプリケーションが中断することなくサービスを提供できる

APIプロキシを作成する

プロキシ開発>APIプロキシ
image.png

画面遷移後、+CREATEをクリックする
image.png

image.png

image.png

デプロイ

image.png

image.png

image.png

image.png

image.png

# curl https://35.227.252.4.nip.io/test-proxy
# Hello, Guest!

エンドポイントを変更する

タブのDEVELOPを選択
image.png

[Proxy revision] ペインで、[Target Endpoints] > [default] を選択します。
image.png

image.png

image.png

image.png

image.png

image.png

デプロイする
image.png

テストをする

curl https://35.227.252.4.nip.io/test-proxy
<?xml version="1.0" encoding="UTF-8"?> <root><city>San Jose</city><firstName>John</firstName><lastName>Doe</lastName><state>CA</state></root>

ポリシーを追加する

image.png

image.png

image.png

image.png

image.png

ポリシー名変更

Displaynameを変更した方が、組織で仕事する場合は親切であるとは、思うのでそれを想定し、変更してみます
image.png

変更前

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON continueOnError="false" enabled="true" name="X2J-test0507-name">
  <DisplayName>X2J-test0507-display-name</DisplayName>
  <Properties/>
  <Format>yahoo</Format>
  <OutputVariable>response</OutputVariable>
  <Source>response</Source>
</XMLToJSON>

変更後

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON continueOnError="false" enabled="true" name="X2J-test0507-name">
  <DisplayName>X2J-change-xml-to-json-test0507</DisplayName>
  <Properties/>
  <Format>yahoo</Format>
  <OutputVariable>response</OutputVariable>
  <Source>response</Source>
</XMLToJSON>

ポリシーを PreFlow のステップに接続する

image.png

image.png

image.png

再度デプロイをする

テスト



curl https://35.227.252.4.nip.io/test-proxy|python -m json.tool
{"root":{"city":"San Jose","firstName":"John","lastName":"Doe","state":"CA"}}

備考

ビジュアルエディタ形式でとてもわかりやすい

これもあとで説明を加える

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0