https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html
按照文档指引,服务端 log 日志,编写以下测试代码,test 函数返回 true,但是公众号校验总是提示 token 验证失败:
// node.js
const crypto = require('crypto')
function test () {
var signature = 'xxx'
var timestamp = 'xxx'
var nonce = 'xxx'
var arr = ['xxxx'/* token */, timestamp, nonce]
arr.sort()
var str = calculateSHA1(arr.join(''))
return str === signature
}
console.log(test()) // 这里返回是 true,但是微信公众号后台提示校验失败
function calculateSHA1 (input) {
const hash = crypto.createHash('sha1');
hash.update(input)
return hash.digest('hex')
}
已解决,不是返回 true 或 false,而是应该返回参数 echostr
我的也是这个问题但是是signature为null,其他几个参数都有值