チュートリアル:リビジョンを使用して互換性に影響しない API の変更を安全に行う

適用対象: すべての API Management レベル

開発者が API を使用する場合、最終的には API の呼び出し元を中断することなく、その API に変更を加える必要があります。 また、行った変更内容を開発者に知らせると有効です。

Azure API Management では、 リビジョン を使用して、壊れない API 変更を行います。 変更を安全にモデル化してテストできます。 準備ができたら、リビジョンを最新の状態にし、現在の API を置き換えます。

詳細については、「 バージョン と リビジョン」を参照してください。

ヒント

API チームは、ワークスペースでこの機能を使用できます。 ワークスペースは、API と独自の API ランタイム環境への分離された管理アクセスを提供します。

このチュートリアルでは、以下の内容を学習します。

  • 新しいリビジョンの追加
  • リビジョンに互換性に影響しない変更を加える
  • リビジョンを最新にして変更ログ エントリを追加する
  • 開発者ポータルを参照して、変更内容と変更ログを確認します。
  • API リビジョンにアクセスする

Azure portal の API リビジョンのスクリーンショット。

前提条件

新しいリビジョンの追加

  1. Azure portal にサインインし、API Management インスタンスに移動します。

  2. 左側のメニューの [API] で、[API] を選択します。

  3. API の一覧から Swagger Petstore を選択するか、リビジョンを追加する別の API を選択します。

  4. [リビジョン] タブを選択します。

  5. [+ リビジョンの追加] を選択します。

    ポータルで API リビジョンを追加するスクリーンショット。

    ヒント

    API のコンテキスト メニュー ( [...] ) で [リビジョンの追加] を選択することもできます。

  6. 新しいリビジョンの用途を覚えておくために、その説明を入力してください。

  7. [作成] を選択します

    これで、新しいリビジョンが作成されました。

    Note

    元の API はリビジョン 1 のままとなります。 これは、別のリビジョンを最新にすることを選択するまで、ユーザーが引き続き呼び出すリビジョンです。

リビジョンに互換性に影響しない変更を加える

  1. API の一覧から Swagger Petstore を選択します。

  2. 画面の上部付近にある [デザイン ] を選択します。

    デザイン タブの上にある リビジョン セレクター には、現在選択されている リビジョン 2 が表示されます。

    ヒント

    リビジョン セレクターを使用して、作業対象のリビジョンに切り替えます。

  3. [+ Add Operation] (+ 操作の追加) を選択します。

  4. 新しい操作を POST に設定し、操作の [表示名]、および [名前]、[URL] を test に設定します。

  5. 新しい操作を保存します。

    ポータルでリビジョンに操作を追加する方法を示すスクリーンショット。

    これで、リビジョン 2 への変更が完了しました。

  6. ページの上部付近にあるリビジョン セレクターを使用して、リビジョン 1 に切り替えます。

    新しい操作はリビジョン 1 には表示さません。

リビジョンを最新にして変更ログ エントリを追加する

  1. ページの上部付近にあるメニューから、[ 変更履歴] を選択します。

  2. リビジョン 2 のコンテキスト メニュー (...) を開きます。

  3. [これを最新とする] を選択します。

  4. この変更に関するメモを投稿する場合は、 この API の [公開変更ログに投稿] を選択します。 開発者が参照できるように、変更内容の説明を入力します。たとえば、「テスト用リビジョン。新しい "test" 操作を追加しました。」と入力します。

    これでリビジョン 2 が最新となりました。

    ポータルの [リビジョン] ウィンドウのリビジョン メニューのスクリーンショット。

開発者ポータルを参照して、変更内容と変更ログを確認します。

開発者ポータルを試す場合は、API の変更を確認し、そこでログを変更できます。

  1. Azure portal で、API Management インスタンスに移動します。
  2. 左側のメニューの [API] で、[API] を選択します。
  3. 上部のメニューから [開発者ポータル] を選択します。
  4. 開発者ポータルで、 [API] を選択し、 [Swagger Petstore] を選択します。
  5. 新しい test 操作が使用可能となっています。
  6. API 名の近くにある [ログの変更] を選択します。
  7. この一覧に、変更ログ エントリが表示されます。

API リビジョンにアクセスする

API の各リビジョンには、特別な形式の URL を使用してアクセスできます。 クエリ文字列の前ではなく、対象の API の URL パスの末尾に ;rev={revisionNumber} を追加することで、その API の特定のリビジョンにアクセスします。 たとえば、Swagger Petstore API のリビジョン 2 にアクセスするには、次のような URL を使用できます:

https://apim-hello-world.azure-api.net/store/pet/1;rev=2/

API のリビジョンの URL パスは、Azure portal の [リビジョン] タブで確認できます。

ポータルのリビジョン URL のスクリーンショット。

ヒント

API パスに を追加する完全な URL に加えて、;rev 文字列のない API パスを使用して、API の "現在" のリビジョンにアクセスできます。;rev={revisionNumber}

まとめ

このチュートリアルでは、次の作業を行う方法を学びました。

  • 新しいリビジョンの追加
  • リビジョンに互換性に影響しない変更を加える
  • リビジョンを最新にして変更ログ エントリを追加する
  • 開発者ポータルを参照して、変更内容と変更ログを確認します。
  • API リビジョンにアクセスする

次のステップ

次のチュートリアルに進みます。