我可以使用node-red-node-watson库来调用在IBM Cloud的US-South区域中托管的Watson Conversation实例。如果我在德国地区尝试,它就行不通。
在github中,我发现了以下一行
ConversationV1.URL = 'https://gateway.watsonplatform.net/conversation/api';
这是美国南方的对话网址。 Bluemix VCAP_SERVICES中为Frankfurt实例显示的URL是不同的:
"https://gateway-fra.watsonplatform.net/conversation/api"
我不确定硬编码的URL是否只是默认值,我只是错过了从VCAP_SERVICES读取实际URL的代码,或者这实际上是一个错误。
有人在US-South以外的地区成功使用Node-RED节点进行Watson对话吗?
答案 0 :(得分:3)
初始化Conversation对象时,应该可以设置正确的基本URL。这适用于Node SDK,而不是Node-RED:
// Create the service wrapper
var conversation = new Conversation({
username: '<username>',
password: '<password>',
url: 'https://gateway-fra.watsonplatform.net/conversation/api',
version_date: Conversation.VERSION_DATE_2017_04_21
});
我对Python SDK更熟悉,并且(仅在Python :)中也是如此。
对于Node-RED,有两种情况。当Conversation服务绑定到Node-RED应用程序时,包含URL的凭据将从VCAP环境中获取。这对我有用,应该适合你。如果服务没有约束,那么就会出现一个&#34;特征差距&#34;基于Conversation Node source code。