解决微信消息推送对接一直返回-Token校验失败,请检查确认

作者: wxfeng 分类: php 发布时间: 2023-11-20 17:38    阅读 1,180 次

问题描述:按照官网验签通过,echostr返回的值也正确,但验证时一直提示:Token校验失败,请检查确认,卡了一天。

解决方案:
主要函数ob_clean(); 不知道你们会遇到什么样的问题,我是主要这个函数解决的,清空缓存区的内容

    public function notify()
    {
        $signature = $_GET['signature'];
        $timestamp = $_GET['timestamp'];
        $echostr = $_GET['echostr']; //接收传递字符串
        $nonce = $_GET['nonce'];
        $token = TOKEN; //和设置的Token一致
        $tmpArr = array($token, $timestamp, $nonce);
        sort($tmpArr, SORT_STRING);
        $tmpStr = implode($tmpArr);
        $tmpStr = sha1($tmpStr);
        //前面的全不用动,主要是给服务器返回的部分,我网上搜的又是转字符串,又是干啥的,很多都没用
        if ($tmpStr == $signature) {
            ob_clean(); //这个位置
            echo $echostr;
            exit;
        } else {
            echo '返回失败';
            exit;
        }
    }

转自:https://codeleading.com/article/74286403186/

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

您的电子邮箱地址不会被公开。