4

我目前正在尝试在 MS Cognitive Services Bing Search API 上进行新闻搜索。我已经阅读了很多文档,但似乎被卡住了。

这是我正在使用的代码:

$url = 'https://bingapis.azure-api.net/api/v5/news/search?q=microsoft&mkt=en-us';
$key = '{MY KEY}';
$request_headers = array();
$request_headers[] = 'Ocp-Apim-Subscription-Key: '. $key;
$request_headers[] = 'User-Agent: mozilla';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $request_headers);
$data = curl_exec($ch);
curl_close($ch);
echo $data;

此代码返回以下结果:

{ "statusCode": 401, "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." }

当我从网站上的 API Explorer 得到相同的结果时,我认为问题出在我的密钥上,而不是我的代码上。但这是认知服务为我的订阅提供的密钥,可在https://www.microsoft.com/cognitive-services/en-us/subscriptions上找到(登录时)。

如果这不是正确的密钥,我应该使用什么?

4

1 回答 1

4

我在 Microsoft 的认知服务团队工作。如果您在 6 月 22 日之后生成订阅密钥(或更新您的密钥)并且当前使用https://bingapis.azure-api.net/api/v5/基本 URI,您可能会遇到 Bing API 的此问题。

更新以使用新订阅密钥时,您必须更新应用程序以使用https://api.cognitive.microsoft.com/bing/v5.0/基本 URI。

此外,如果您使用的是 Bing API 的 API 参考,您可以尝试以下链接,这些链接应该可以使用新密钥。

对给您带来的不便深表歉意,并感谢您报告问题 - 我们正在更新链接。

于 2016-06-22T23:13:28.683 回答