1. 服务器端口设置为80
2. 验证消息来自微信服务器时返回echostr,并结束脚本
<?php
namespace app\controller;
use app\BaseController;
use think\facade\Log;
class Index extends BaseController
{
public function index()
{
$param = input('param.');
return json($param);
}
public function test()
{
$echostr = input('param.echostr');
Log::write(input('param.'));
if($this->request->isGet()) {
if($this->checkSign()) {
echo $echostr;
exit();
}else {
return '请求非法';
}
}else {
return 'bbb';
}
}
public function checkSign()
{
$signature = input('param.signature');
$timestamp = input('param.timestamp');
$nonce= input('param.nonce');
$token = 'test';
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
Log::write('校验结果:'.$tmpStr.'测试:'.$signature);
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
}