小程序消息推送配置 一直显示token校验失败 怎么回事呀!!

问题

小程序消息推送配置 显示token校验失败!

代码

public function checkSignature(Request $request)
    {
        $this->validate($request, [
            'signature'        => 'required',
            'timestamp'        => 'required',
            'nonce'        => 'required',
            'echostr'        => 'required',
        ]);

        $signature = $request->input('signature');
        $timestamp = $request->input('timestamp');
        $nonce = $request->input('nonce');
        $echostr = $request->input('echostr');

        Log::info("****-*****小程序接入参数1",['signature'=>$signature,'timestamp'=>$timestamp,'nonce'=>$nonce,'echostr'=>$echostr]);

        $tmpArr = array($this->token, $timestamp, $nonce);
        sort($tmpArr, SORT_STRING);
        $tmpStr = implode( $tmpArr );
        $tmpStr = sha1( $tmpStr );

        Log::info("****-*****小程序接入验证签名",[$tmpStr]);

        if ($tmpStr == $signature ) {
            ob_clean();
            echo $echostr;
            exit;
        } else {
            return false;
        }
    }

小程序配置内容

小程序消息推送配置 一直显示token校验失败 怎么回事呀!!

路由在这里

小程序消息推送配置 一直显示token校验失败 怎么回事呀!!

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 22
DonnyLiu

用postman测试一下能不能正常走通校验流程

1年前 评论
MuBaiYang (楼主) 1年前
DonnyLiu (作者) 1年前
MuBaiYang (楼主) 1年前
DonnyLiu (作者) 1年前

你要把 echostr 返回给微信

1年前 评论
MuBaiYang (楼主) 1年前
kkokk (作者) 1年前
MuBaiYang (楼主) 1年前
kkokk (作者) 1年前
kkokk (作者) 1年前
MuBaiYang (楼主) 1年前
kkokk (作者) 1年前
MuBaiYang (楼主) 1年前
kkokk (作者) 1年前
MuBaiYang (楼主) 1年前

laravel 处理的话,看下路由是不是在web组下面的,有验证csrf,微信回调会被拦截,可以建个新的路由组或者去掉这个验证。

1年前 评论
MuBaiYang (楼主) 1年前

csrt token 中间件把这个路由排除掉

1年前 评论
MuBaiYang (楼主) 1年前

file

把路由加到这里就可以了

1年前 评论
MuBaiYang (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!