Ошибка 401 при доступе к Bing News API v7 с помощью Unity

#c# #unity3d #azure-cognitive-services #bing-news-search-api

#c# #unity3d #azure-когнитивные службы #bing-news-search-api

Вопрос:

Я хотел бы использовать UnityEngine.Подключение к сети и StartCoroutine() для извлечения данных из Bing API в Unity / C #. Я получаю ошибку 401, которая:

 {"error":{"code":"401","message": "Access denied due to invalid subscription key or wrong API endpoint. Make sure to provide a valid key for an active subscription and use a correct regional API endpoint for your resource."}}
  

URL-адрес, который я пытаюсь вызвать, является:

 https://[**MyEndpoint**]/bing/v7.0/news/trendingtopics?BingAPIs-Market=en-USamp;Ocp-Apim-Subscription-Key=[**KEY**]
  

Я предполагаю, что причина отклонения заключается в том, что я явно добавил заголовок Ocp-Apim-Subscription-Key в URL, но не уверен на 100%.

Комментарии:

1. Ключ подписки является заголовком и не входит в URL-адрес. Смотрите : learn.microsoft.com/en-us/azure/cognitive-services /…

2. как дела? Ваша проблема решена?

3. @jdweng спасибо за помощь! Я пытался прочитать документацию, прежде чем опубликовать этот вопрос, но я запутался из-за недостатка знаний, которые у меня есть в C # и Azure, но я уверен, что однажды я это получу! теперь я знаю, что заголовок на самом деле не принадлежит URL, так что спасибо за это

Ответ №1:

Как указал @jdweng, вы должны указать свой ключ подписки в заголовке запроса, как показано ниже : введите описание изображения здесь

Если вам необходимо использовать ключ подписки в URL-адресе запроса, параметр здесь должен быть subscription-key вместо Ocp-Apim-Subscription-Key , как показано ниже:

введите описание изображения здесь

Ответ №2:

Bing API является RESTful API и ожидает ключ аутентификации в заголовке запроса