/**
* 微信公众平台服务器验证
* @param $signature 微信加密签名
* @param $timestamp 时间戳
* @param $nonce 随机数
* @param string $token 微信公众平台的token
* @return bool
*/
function checkSignature($signature, $timestamp, $nonce, $token = 'wxToken')
{
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if ($tmpStr == $signature) {
return true;
}
return false;
}
- controller调用示例如下
class Index
{
public function wxCheck()
{
$signature = input('signature');//微信加密签名
$timestamp = input('timestamp');//时间戳
$nonce = input('nonce');//随机数
$echostr = input('echostr');//随机字符串
$wxtoken = 'vlWYnVRxvO9GgaLplbYbLdaElmkEpYr1';//微信公众平台的token
if ($echostr && checkSignature($signature, $timestamp, $nonce, $wxtoken)) {
//return $echostr;
echo $echostr;
exit();
}
}
- 配置路由rout.php
Route::any('api/wxck', 'index/wxCheck');
-
提交接口配置信息
image.png
网友评论