10.5. カスタムヘッダーによるバージョン管理
カスタムヘッダーによるバージョン管理では、バージョンを指定するのに URI ではなくヘッダー (「x-api-version」) を使用します。
この場合、ゲートウェイはパスからエンドポイントを、ヘッダーからバージョンを、それぞれ抽出します。前述の手法とまったく同様に、パス/バージョンの任意の組み合わせを解析して可視化することができます。このアプローチには、使用する API 管理システムにかかわらず、いくつかのデメリットがあります。詳細については、「API versioning methods: A brief reference」を参照してください。3scale が機能する仕組みを以下に示します。
- 前項の手法とまったく同様に、カスタムヘッダーによるバージョン管理は、オンプレミスのホスト型 API にのみ適用可能です。authrep 呼び出しを正しくルーティングするには、リクエストヘッダーの解析/処理が必要だからです。このタイプのカスタム処理の実施には、Lua スクリプトの使用が不可欠です。
- この手法では、前項の手法のようなきめ細かな機能分離を実現するのが非常に困難です。
- この手法の最も重要なメリットは、開発者の指定する URL およびエンドポイントが変更されないことです。開発者がある API バージョンから別の API バージョンに切り替える場合、変更する必要があるのはヘッダーだけです。それ以外はすべて同じままで機能します。