小程序消息推送配置一直失败
一直提示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;
}
}