[V9.0.1 2016 年 11 月]

REST API ディスカバリー

REST API の資料は、 IBM® Documentation および Swagger 形式で入手できます。 Swagger は、REST API を文書化するために一般的に使用されている方法です。 REST API の Swagger 文書は、mqweb サーバーで API ディスカバリー機能を有効にすることによって表示できます。

始める前に

重要: API Discovery 機能は安定化されており、引き続きこの機能を使用できます。 現時点では、 IBM MQmpOpenAPI フィーチャーの使用をサポートしていません。

API ディスカバリーを使用して Swagger 資料を表示するには、mqweb サーバーのセキュリティーを有効にする必要があります。 セキュリティーを有効にするために必要なステップについて詳しくは、 IBM MQ Console セキュリティーの構成を参照してください。

手順

  1. 以下のいずれかのディレクトリーで mqwebuser.xml ファイルを見つけます。
    • [UNIX、Linux、Windows]MQ_DATA_DIRECTORY/web/installations/installationName/servers/mqweb
    • [z/OS]WLP_user_directory/servers/mqweb

      ここで、 WLP_user_directory は、mqweb サーバー定義を作成するために crtmqweb.sh スクリプトを実行したときに指定したディレクトリーです。

  2. 以下のようにして、適切な XML を mqwebuser.xml ファイルに追加します。
    • <featureManager> タグが mqwebuser.xml ファイルにある場合は、以下の XML を <featureManager> タグ内に追加します。

      <feature>apiDiscovery-1.0</feature>

    • <featureManager> タグが mqwebuser.xml ファイルにない場合は、以下の XML を <server> タグ内に追加します。
      <featureManager>
           <feature>apiDiscovery-1.0</feature>
      </featureManager>
  3. 次のいずれかの方法で、Swagger 資料を表示します。
    • ブラウザーに以下の URL を入力して、 REST API を参照して試すことができる Web ページを表示します。

      https://host:port/ibm/api/explorer

      各要求を認証することに加えて、POST、PATCH、または DELETE 要求ごとに ibm-mq-rest-csrf-token ヘッダーを含める必要があります。

      [V9.0.5 2018 年 3 月]このヘッダーに必要な内容は、 IBM MQのバージョンによって異なります。
      • IBM MQ 9.0.5以降、 ibm-mq-rest-csrf-token HTTP ヘッダーが要求内に存在する必要があります。その値は、ブランクを含む任意の値にすることができます。
      • IBM MQ 9.0.5より前では、ヘッダーの値は csrfToken Cookie の内容です。 REST APIで HTTP GET メソッドを使用すると、 csrfToken が生成されます。 ブラウザーのアドレス・バーに以下のテキストを入力すると、Cookie の内容を参照できます。
        javascript:alert(document.cookie)
      この要求ヘッダーを使用して、要求の認証に使用する資格情報が、資格情報の所有者によって使用されていることを確認できます。 つまり、トークンはクロスサイト・リクエスト・フォージェリー攻撃を防ぐために使用されます。
    • 以下の URL に対して HTTP GET を発行して、 REST API 全体を記述する単一の Swagger 2 文書を取得します。

      https://host:port/ibm/api/docs

      この資料は、使用可能な API をプログラムでナビゲートしたいアプリケーションで使用できます。

    host
    REST API が使用可能なホスト名または IP アドレスを指定します。
    デフォルト値は localhostです。
    port
    administrative REST API が使用する HTTPS ポート番号を指定します。
    デフォルト値は 9443です。

    ホスト名またはポート番号がデフォルトから変更された場合は、 REST API URL から正しい値を判別できます。 URL の判別について詳しくは、「 REST API URL の判別」を参照してください。