字节小程序
开发者社区
小程序小游戏
登录
“消息推送客服”验证消息失败

“消息推送客服”验证消息失败

85浏览作者: zudongkeji2020

问题类型: BUG

代码片段ID:

电脑操作系统: Window

工具版本号: 1.0.0

问题模块: 开发者工具


根据文档验证消息有效性:

https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/component/message-push-customer-service/

开发者通过校验 signature 来判断请求是否来自于今日头条服务器。signature 生成方式为:

1、将开发者填写的 token、timestamp、nonce、msg 四个参数进行字典序排序,并拼接(不用任何符号,直接拼接)成一个字符串。

2、将上一步得到的字符串进行 sha1 加密。

复现步骤

收到消息:
{"msg":"{\"ToUserName\":\"tt453f3382da01aeed01\",\"FromUserName\":\"573b63c9-8eec-458c-a109-dc28bf2d447a\",\"CreateTime\":1658124409016,\"MsgType\":\"text\",\"Content\":\"测试微信\"}","msg_signature":"1cfa3d1c4aeb7dc6adea859ae3845f231b0cd677","nonce":"8040","timestamp":"1658124409"}
  • 验证失败,如下图



1、 token、timestamp、nonce、msg参数拼接时,是否是参数“名和值”都要拼接么?

2、sha1 加密时,字符转二进制使用的什么编码呢?

3、验证过程是否有参照代码?


最后一次编辑于 2022年07月20日
加载中