Nodejs BotFrameworkAdapter不是构造函数错误

时间:2019-03-13 13:38:45

标签: node.js botframework azure-bot-service

我正在尝试部署使用botframework v4开发的bot。即使一切看起来正确,我也不断得到 “应用程序引发了未捕获的异常并被终止: TypeError:BotFrameworkAdapter不是构造函数”

我还验证了appId和密码已正确传递给以下代码:

const adapter = new BotFrameworkAdapter({
    appId: endpointConfig.appId || process.env.microsoftAppID,
    appPassword: endpointConfig.appPassword || process.env.microsoftAppPassword
});

有人可以让我知道是什么问题吗?

谢谢

1 个答案:

答案 0 :(得分:1)

经过一些测试,我相信您的问题可能是您遇到的:

const BotFrameworkAdapter = require('botbuilder');

而不是:

const { BotFrameworkAdapter } = require('botbuilder');

BotFameworkAdapter

处必须使用方括号

如果您不知道为什么(您可能是,这是后代的原因),则称为"destructuring assignment"

不带括号

const BotFrameworkAdapter = require('botbuilder')

将BotFrameworkAdapter设置为botbuilder all

如果您这样做,则可以使用以下方式访问BotFrameworkAdapter

BotFrameworkAdapter.BotFrameworkAdapter


使用

const { BotFrameworkAdapter } = require('botbuilder')

从整体上将BotFrameworkAdapter设置为导出的BotFrameworkAdapter类,而不是botbuilder

注意:您也可以使用:

const BotFrameworkAdapter = require('botbuilder').BotFrameworkAdapter