【发布时间】:2019-03-01 02:08:32
【问题描述】:
在 ibm 云中的 node-red 中。我能够使用 IBM Watson 节点“助理工作空间管理器”来检索特定的对话节点。但是,我无法使用相同的“助理工作区管理器”来更新对话节点。我不断收到错误消息“无效的请求正文”。
这不是凭据错误的问题,因为我对两个实例使用相同的凭据。
下面是我的函数模块中的代码,它将信息传递给我的“助理工作区管理器”节点,以便它可以更新我的 watson 对话工作区中的对话节点。
var uptime = msg.payload[1].d.uptime;
var message = "Server uptime is " + uptime + " seconds.";
msg.topic = "";
msg.dialog_node.output.generic[0].values[0].text = message;
msg.payload = msg.dialog_node;
return msg;
我确实将返回给我的对话节点与包含我想要注入的信息的消息结合起来,然后修改了有效负载(在尝试更新我的对话节点之前),使有效负载看起来与返回给我的对话节点(修改消息的文本除外)。
过去我已经成功地做到了这一点,通过手动格式化 msg.payload 对象,类似于它返回的格式。我也尝试过,但是当它不起作用时,我尝试了这种方法。
任何建议将不胜感激。
提前致谢。
【问题讨论】:
-
也许您可以在调试节点中传递消息以查看此消息的属性,然后更改/设置正确的。
标签: ibm-cloud node-red watson-conversation