我的项目使用botkit-middleware-watson与IBM Watson进行对话。现在,我需要为此Watson服务制作一个模拟服务器。

这只是调用Watson API的一行代码。

await watsonMiddleware.sendToWatsonAsync(bot, msg, null);


我的问题是,如何截获API调用并将该调用重定向到我的Watson Mock-Server?

最佳答案

this one这样的botkit-middleware-watson示例展示了如何配置WatsonMiddleware

const WatsonMiddleware = require('botkit-middleware-watson').WatsonMiddleware;

const middleware = new WatsonMiddleware({
  iam_apikey: process.env.ASSISTANT_IAM_APIKEY,
  workspace_id: process.env.WORKSPACE_ID,
  url: process.env.ASSISTANT_URL || 'https://gateway.watsonplatform.net/assistant/api',
  version: '2018-07-10'
});


...在ASSISTANT_URL中设置.env的位置。这似乎是配置模拟服务器/模拟器的URL的地方。

如果您正在使用的模拟器支持作为HTTP代理运行,则botkit的另一种选择是将模拟器称为HTTP代理。

08-19 06:36