一直提示token验证失败,但是接口有返回


代码如下

 public function isValid()//验证微信接口,如果确认是微信就返回它传来的echostr参数
   {
       //1. 将timestamp , nonce , token 按照字典排序
       $timestamp = $_GET['timestamp'];
       Log::info('微信传递的时间戳' . $timestamp);
       $nonce = $_GET['nonce'];
       Log::info('微信传递的nonce' . $nonce);
       $token = "yuanhuan2018";
       $signature = $_GET['signature'];
       Log::info('微信传递的签名' . $signature);
       $array = array($timestamp, $nonce, $token);
       $newArr = sort($array);
       Log::info('排序前的数组' . json_encode($array));
       Log::info('排序后的数组' . json_encode($newArr));
//2.将排序后的三个参数拼接后用sha1加密
       $tmpstr = implode('', $array);
       $tmpstr = sha1($tmpstr);
       Log::info('临时的字符串' . $tmpstr);
//3. 将加密后的字符串与 signature 进行对比, 判断该请求是否来自微信
       if ($tmpstr == $signature) {
           Log::info('最后的匹配一致输出字符串echostr' . $_GET['echostr']);
           echo $_GET['echostr'];
           exit;
       }
   }


展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • 百毒不侵

    14人对此回答表示赞同

    请问一下,问题解决了吗?我也是这个问题很头疼,想问下是什么原因?

    展开
    14
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • justsososo

    4人对此回答表示赞同

    ob_clean();加上这行

    展开
    4
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部