首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Facebook信使回邮电话三次

Facebook信使回邮电话三次
EN

Stack Overflow用户
提问于 2016-06-27 06:00:44
回答 1查看 157关注 0票数 0

我已经成功地创造了一个facebook信使机器人。我也在我的应用程序中实现了消息回发,在我的安卓设备(Messenger V 68.0.0.22.67)中,它似乎运行得很好。

但当我尝试使用三星Galaxy S5和信使V 76.0.0.13.70时,所有事件postback都被称为三次事件。我甚至尝试和其他一些现有的facebook机器人一起在同一个设备上测试回发事件,情况也是一样的。每次回发我都会得到三次回复。

这可能是信使版本的问题吗?到目前为止,我还没有找到任何与此相关的问题日志。

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-15 12:12:31

当Facebook在报头中发回的签名与您计算的有效负载签名不匹配时,就会发生这种情况。这将返回一个500到Facebook和Facebook重试这个请求两次(总共三个请求)。

问题

问题是有些字符必须对UNICODE进行编码。

例如:

在计算散列之前,必须将@字符替换为“\u 0040”。

溶液

我只是在模块的verifySignature中完成了这一工作。

let hash = crypto.createHmac('sha1',this.APP_SECRET).update(JSON.stringify(req.body).replace(/@/g,"\\u0040").replace(/\//g, '\\/')).digest('hex');

本文将深入探讨解决方案。

https://hackernoon.com/regenerating-a-raw-request-payload-an-impossible-task-e4133fb2571

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38046794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档