javascript - IBM Watson Visual Recognition API、Node.js:未经授权:由于凭据无效,访问被拒绝
问题描述
我正在尝试使用 IBM 网站上的应用程序代码来检测图像中的人脸。我住在澳大利亚,Unauthorized: Access is denied due to invalid credentials
当我打电话时我不断收到这个错误node app.js
这是我的代码:
function main(params) {
return new Promise(function (resolve, reject) {
var res = {};
const VisualRecognitionV3 =
require('watson-developer-cloud/visual-recognition/v3');
var url = params.url || 'https://gateway-a.watsonplatform.net/visual-recognition/api' ;
var use_unauthenticated = params.use_unauthenticated || false ;
const visual_recognition = new VisualRecognitionV3({
'api_key': params.api_key,
'version_date': '2016-05-20',
'url' : url,
'use_unauthenticated': use_unauthenticated
});
visual_recognition.detectFaces({'url': params.imageurl}, function(err, res) {
if (err)
reject(err);
else
resolve(res);
});
});
}
const defaultParameters = {
'api_key': 'API KEY',
'imageurl': 'https://www.whitehouse.gov/sites/whitehouse.gov/files/images/' +
'first-family/44_barack_obama%5B1%5D.jpg',
'url' : 'https://gateway-a.watsonplatform.net/visual-recognition/api',
'use_unauthenticated' : true
}
if (require.main === module)
main(defaultParameters)
.then((results) => console.log(JSON.stringify(results, null, 2)))
.catch((error) => console.log(error.message));
我究竟做错了什么?为什么我总是收到这个错误???
解决方案
在大多数情况下,是因为您使用了错误的端点。检查您应该针对您的 Watson Visual Recognition 实例使用哪个 url。这将是您获得钥匙的同一个地方。
var url = params.url || 'https://gateway-a.watsonplatform.net/visual-recognition/api' ;
检查您拥有的params.url
内容以及url
设置的内容。
推荐阅读
- javascript - 无法使用 vue2-leaflet-googlemutant 设置地图选项
- docker - win10 无法使用 docker 和代理
- spring - 每次测试方法后重置 EmbeddedKafka
- three.js - 在具有角度 theta 和 -theta 的平面上找到两个新向量
- excel - 取消保护多个工作簿 VBA
- signalr - 是否可以从 Postman 调用 SignalR Hub
- r - testthat:设置可用于所有测试的数据库连接
- kubernetes - 减少 kubectl scale 的等待时间
- ios - 为什么“volumeAvailableCapacityForImportantUsage”为零?
- python - 使 SymPy 符号仅指实数集