沃森视觉识别API C#授权
试图让Watson Visual Recognition与C#一起工作,但在尝试通过API对图像进行分类时,我遇到了一个未经授权的错误。我使用的凭据是“自动生成的服务凭据” 我收到的错误是: ServiceResponseException:API查询失败,状态代码为Unauthorized:Unauthorized 这是我的密码:沃森视觉识别API C#授权,c#,ibm-watson,visual-recognition,C#,Ibm Watson,Visual Recognition,试图让Watson Visual Recognition与C#一起工作,但在尝试通过API对图像进行分类时,我遇到了一个未经授权的错误。我使用的凭据是“自动生成的服务凭据” 我收到的错误是: ServiceResponseException:API查询失败,状态代码为Unauthorized:Unauthorized 这是我的密码: class Program { static void Main(string[] args) { string apiKey =
class Program
{
static void Main(string[] args)
{
string apiKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
string versionDate = "2018-03-19";
string endpoint = "https://gateway.watsonplatform.net/visual-recognition/api";
VisualRecognitionService visualRecognition = new VisualRecognitionService(apiKey, versionDate);
visualRecognition.SetEndpoint(endpoint);
// throws error here
var result = visualRecognition.Classify(url: "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/Collage_of_Nine_Dogs.jpg/1023px-Collage_of_Nine_Dogs.jpg");
}
}
另外,如果我能提供更多可能有帮助的信息,请告诉我。好的,在查看node.js实现的回答后,我找到了一个解决方案: 问题是我需要使用Iam Api密钥进行身份验证,可以这样做:
class Program
{
static void Main(string[] args)
{
string apiKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
string versionDate = "2018-03-19";
string endpoint = "https://gateway.watsonplatform.net/visual-recognition/api";
VisualRecognitionService visualRecognition = new VisualRecognitionService(apiKey, versionDate);
visualRecognition.SetEndpoint(endpoint);
// updated to include token options with Iam Api Key
TokenOptions options = new TokenOptions
{
IamApiKey = apiKey
};
visualRecognition.SetCredential(options);
// end edit
var result = visualRecognition.Classify(url: "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/Collage_of_Nine_Dogs.jpg/1023px-Collage_of_Nine_Dogs.jpg");
}
}
希望这对任何有类似问题的人都有帮助你能用url试试吗:另外,需要用url中的“/”转义“/”:谢谢你的评论,我已经找到了解决方案@Gauravsa该url将错误更改为禁止:未经授权。没有必要在url中转义“/”,但我认为这样做是一种很好的做法。再次感谢