インターネットからAPIMのサイトを開く方法

HTTP 401 Access Denied, message: “Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API.”

作成したAPIMをインターネットから表示させようとしたところ上記エラーが表示されました。

調べると、どうやら"Ocp-Apim-Subscription-Key"がないリクエストをNGとしているみたい。  公式マニュアル*1によると、AzureポータルからのTESTの際には自動で入力していたようです。 インターネットからのアクセスの時にはHeader内にその情報がないからエラーというわけですね。では入れてやりますか。

この API に関連付けられている成果物のサブスクリプション キーの場合、ヘッダーの 1 つは "Ocp-Apim-Subscription-Key" です。 キーが自動的に入力されます。

Chrome標準の機能ではHTTP Headerの情報を書き換えることはできなかったので、chrome web storeからRequestlyを追加。 Requestlyの設定値は以下の通り。

  • Header:Ocp-Apim-Subscription-Key
  • Value:(Built-in all-access subscriptionの主キーから確認可能)
  • URL Contains:apimのURLを記載

再度打鍵したところインターネットから表示可能になりました。めでたし、めでたし。

フロントにApplicationGatewayがいるときなんかは、このHeader情報はだれがどこで埋め込んでくれるのか疑問。

~おしまい~