在微信接口配置信息时,返回wrong,接口返回{errcode: -106, errmsg: "token check fail"}

来源:1-6 第一天 写段代码实现加密认证逻辑

大丢

2017-03-31

如题,请问有小伙伴遇到一样的问题么,signature都返回了的,就是页面返回的是wrong,然后微信配置一直提示失败

写回答

4回答

Scott

2017-03-31

先排除两种小一点的可能性,第一,这个用于接受微信请求的 url 在其他的公众号中有使用,第二,本地所连接的 wifi,有丢包现象(有同学遇到过,导致丢包重试多次请求)


那么代码出错的可能性比较大,看看 token 这里的获取有没有问题:


Wechat.prototype.fetchAccessToken = function() {
  var that = this
  return this.getAccessToken()
    .then(function(data) {
      try {
        data = JSON.parse(data)
      }
      catch(e) {
        return that.updateAccessToken()
      }
      if (that.isValidAccessToken(data)) {
        return Promise.resolve(data)
      }
      else {
        return that.updateAccessToken()
      }
    })
    .then(function(data) {
      that.saveAccessToken(data)
      return Promise.resolve(data)
    })
}


0
0

一场雪

2017-06-24

这是微信文档中的原话:

开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败

0
0

一场雪

2017-06-24

需要返回echostr

加上这句就ok

res.send(req.query.echostr);


0
0

大丢

提问者

2017-03-31

捣鼓了一下。。微信配置已经好了,但页面返回的还是wrong,打印出来的内容,一开始是正确的,后面又请求了3次,从第二次开始就不对了。

请问为啥会请求那么多次?


0
0

7天搞定Node.js微信公众号

Koa框架、ES2015新特性、MongoDB,开发微信公众号

1742 学习 · 787 问题

查看课程