从NodeJS访问Azure API时访问错误

问题描述 投票:1回答:1

我正在尝试在NodeJS应用中使用Azure新闻搜索。路由器的代码在这里:

const CognitiveServicesCredentials = require('ms-rest-azure').CognitiveServicesCredentials;
let credentials = new CognitiveServicesCredentials('apikey');
let search_term = 'Winter Olympics'
const NewsSearchAPIClient = require('azure-cognitiveservices-newssearch');
let client = new NewsSearchAPIClient(credentials);
client.newsOperations.search(search_term).then((result) => {
    console.log(result.value);
}).catch((err) => {
    throw err;
});

我收到一个错误:

由于无效的订阅密钥或错误的API端点而拒绝了访问。确保为有效的订阅提供有效的密钥,并为您的资源使用正确的区域API端点。

我确保我的API密钥正确。该代码示例直接来自Azure的Quickstart quide。那里没有提及端点。我觉得我正在丢失某些东西,但不知道是什么。

谢谢您的指导。

node.js microsoft-cognitive endpoint azure-cognitive-services bing-news-search-api
1个回答
1
投票

尝试使用此选项来指定端点:

const CognitiveServicesCredentials = require('ms-rest-azure').CognitiveServicesCredentials;
let credentials = new CognitiveServicesCredentials('<api key>');
let search_term = 'Winter Olympics'
const NewsSearchAPIClient = require('azure-cognitiveservices-newssearch');


let client = new NewsSearchAPIClient(credentials,{"endpoint":"<endpoint url>"});

client.newsOperations.search(search_term,{"count":1}).then((result) => {
    console.log(result.value);
}).catch((err) => {
    console.log(err);
    throw err;
});

结果:

enter image description here

希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.