IBM Watson Conversation - 无法将node.js连接到watson对话

时间:2017-06-01 13:12:01

标签: node.js ibm-watson watson-conversation

我遇到了IBM Watson Conversation应用程序的问题。

我已经设置了我的应用程序并尝试将其连接到我的node.js应用程序。我在这里遵循这个教程: https://github.com/watson-developer-cloud/node-sdk#conversation 我正在使用官方node.js api ibm提供。

不幸的是它不起作用,我得到了以下错误。

{ Error: Not Authorized
    at Request._callback (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/lib/requestwrapper.js:87:15)
    at Request.self.callback (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:188:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:1171:10)
    at emitOne (events.js:96:13)
    at Request.emit (events.js:188:7)
    at IncomingMessage.<anonymous> (/Volumes/hd2/Projekte/vi-com-bot-service/node_modules/watson-developer-cloud/node_modules/request/request.js:1091:12)
    at IncomingMessage.g (events.js:291:16)
    at emitNone (events.js:91:20)
  code: 401,
  error: 'Not Authorized',
  description: '2017-06-01T08:57:57-04:00, Error ERCDPLTFRM-DNLKUPERR occurred when accessing https://gateway.watsonplatform.net/conversation/api/v1/workspaces/dc8097e8-fea7-47a3-80ed-57c43321377e/message?version=2017-04-21, Tran-Id: gateway-dp01-2475007148 - Invalid UserId and/or Password. Please confirm that your credentials match the end-point you are trying to access. A common error is trying to use credentials from an experimental or beta release against a GA release or vice versa' }

我提供的凭证是正确的。

你有一个想法,为什么我不工作? 最好,本

2 个答案:

答案 0 :(得分:2)

Bluemix有许多可以托管服务的地区。每个地区都有不同的网关。默认情况下为https://gateway.watsonplatform.net

对于德国+法国地区,您可以在代码中设置以下网址变量:

url: 'https://gateway-fra.watsonplatform.net/conversation/api/'

像这样:

var conversation = new ConversationV1({
  username: '<username>',
  password: '<password>',
  url: 'https://gateway-fra.watsonplatform.net/conversation/api/',
  version_date: ConversationV1.VERSION_DATE_2017_05_26
});

对于其他地区,您可以访问Watson会话服务凭据以查看URL。或者对话工作区“Deploy”,然后是“Credentials”部分。

这是Watson Assistant修订版IBM Cloud API的链接,包括node.js的代码示例和URL列表(请参阅“服务端点”)。

答案 1 :(得分:0)

var ConversationV1= require('watson-developer-cloud/conversation/v1');
    var conversation = new ConversationV1({
        username:'<username>',
        password: '<Password>',
    version_date: 'Date'
});
conversation.message({
  workspace_id:'<Workspace Id>',
            context: userContext,
            input: {
            "text": "<text>"
                }
},function(err,resp){

});