调用GetSentimentAsync失败,错误401,如标题
中所述var client = new SentimentClient(Constants.API_KEY);
var request = new SentimentRequest();
var response = await client.GetSentimentAsync(request);
我在Azure中生成密钥的资源组有位置"美国中南部",我的位置是科罗拉多州,我的订阅是" Visual Studio Enterprise"
我用这个页面来测试我的服务 https://westus.dev.cognitive.microsoft.com/docs/services/TextAnalytics.V2.0/operations/56f30ceeeda5650db055a3c7
如果我使用https://westus.dev.cognitive.microsoft.com/docs/services/TextAnalytics.V2.0/operations/someID链接来测试呼叫。它给出了401。
如果我使用https://southcentralus.dev.cognitive.microsoft.com/docs/services/TextAnalytics.V2.0/operations/someID/,则它会给出200。
似乎问题与我在Azure中创建新资源时选择的区域有关。似乎默认区域不是我选择的,美国中南部
那么,我该怎么办才能使我的通话成功?我在哪里可以提到API调用区域?
由于 阿巴斯
答案 0 :(得分:1)
解决了它。我只是检查我使用fiddler从我的程序中找到的终点是什么,它是westus只需用westus区域创建Azure端点。
答案 1 :(得分:0)
位置位于API调用本身:https://[location].api.cognitive.microsoft.com/text/analytics/v2.0/sentiment。在您的情况下,您应该使用southcentralus代替[location]。
POST请求的示例在此页面上:https://southcentralus.dev.cognitive.microsoft.com/docs/services/TextAnalytics.V2.0/operations/56f30ceeeda5650db055a3c9/console。