您好我正在使用nodejs并在facebook messenger平台上开发机器人。我的webhook只订阅了messages
和messaging_postbacks
个活动。但是,当我测试机器人时,它似乎发送了三次回调。这是我的webhook代码
server.post('/', (req, res, next) => {
let postback = req.body.entry[0].messaging[0].postback;
if (postback.payload === 'Greet User'){
console.log(postback);
}
}
当我测试我的机器人时,回发对象会被打印三次,如下所示。
{ payload: 'Greet User', title: 'Get Started' }
{ payload: 'Greet User', title: 'Get Started' }
{ payload: 'Greet User', title: 'Get Started' }
任何帮助如何避免它?我在这里阅读了一些帖子,我应该取消选择message_reads
和message_deliveries
订阅。但我还没有选择那些。不确定我还缺少什么?请帮帮我。
答案 0 :(得分:1)
我在网上搜索并自行调试后发现了问题。如果其他人阅读此内容可能有兴趣知道,问题是我没有将200状态发回Facebook。我在这个堆栈溢出帖子中找到了关于需要这样做的提示。
Facebook webhook making multiple calls for the same message?
发送200响应后,我没有收到此问题。放心了:))