美文网首页
“Token校验失败,请检查确认”解决方法

“Token校验失败,请检查确认”解决方法

作者: mr_franklin | 来源:发表于2017-12-20 13:36 被阅读3241次

    微信小程序后台配置消息服务器时报错:“Token校验失败,请检查确认”


    image.png

    我服务器端是用的java的springboot框架,本以为直接return字符串就可以了:

    @RequestMapping(value = "/",method=RequestMethod.GET)
        public String checkWeixinValid(@RequestParam(name="signature")String signature,
                                @RequestParam(name="timestamp")String timestamp,
                                @RequestParam(name="nonce")String nonce,
                                @RequestParam(name="echostr")String echostr){
          // .......
          return echostr;
    }
    

    但这样会一直报上述错误。
    后来发现返回的字符串会多出俩双引号,比如: "2205560651034517463"。
    找了一下原因,定位到我配置的messageConvert,使用了fastjson用来处理json。但是,当它解析一串字符串时,会加上双引号。为避免这个问题,可以在它之前加入处理字符串的convert,比如:StringHttpMessageConverter,这样字符串就不会由fsatjson再加工了。


    事后总结:
    找这么个问题花了我不少时间,期初我一直以为是微信服务的问题,光刷新它的页面就不下5次。
    其实,微信经过这么多年大用户量的考验,它的服务已经很健壮了,有bug的情况极少。当出问题时首先还是要想是不是自己代码的问题。
    从本源入手,要有怀疑精神,但是要有一定的实事依据做基础,凭空怀疑,就太武断了。

    特此记录下来,吸取教训。

    相关文章

      网友评论

          本文标题:“Token校验失败,请检查确认”解决方法

          本文链接:https://www.haomeiwen.com/subject/enrgwxtx.html