小程序
小游戏
企业微信
微信支付
扫描小程序码分享
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
我模拟了一个接口地址 500了,逻辑应该是有语法错误。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
我模拟了一个接口地址 500了,逻辑应该是有语法错误。
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = 'exfq156lxjfwx6xei5ys42j495b76sgm';
$tmpArr = array($token, $timestamp, $nonce);
Log::info($tmpArr);
sort($tmpArr, SORT_STRING);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if ($tmpStr == $signature) {
return true;
} else {
return false;
}
}
{"time":"2023-08-07T11:05:53+08:00","type":"diy1","msg":"s=/applets/GongzhonghaoQr/token&signature=de5e2e8a944c2f53af8585a0df492c1a9fa166e8&echostr=4537970118051946391×tamp=1691377553&nonce=1773733141"}
{"time":"2023-08-07T11:05:53+08:00","type":"diy2","msg":"16913775531773733141exfq156lxjfwx6xei5ys42j495b76sgm"}
{"time":"2023-08-07T11:05:53+08:00","type":"diy3","msg":"4537970118051946391"}
Log::diy1($_SERVER["QUERY_STRING"]);
// 获取微信服务器传递的参数
$signature = $_GET['signature'];
$timestamp = $_GET['timestamp'];
$nonce = $_GET['nonce'];
$echostr = $_GET['echostr'];
$token = 'exfq156lxjfwx6xei5ys42j495b76sgm';
// 将timestamp、nonce、token按字典序排序并拼接在一起
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode($tmpArr);
Log::diy2($tmpStr);
Log::diy3($echostr);
// 使用SHA1加密算法对$tmpStr进行加密
$sha1Str = sha1($tmpStr);
// 将加密后的字符串与微信服务器传递的signature进行对比
if ($sha1Str === $signature) {
// 验证通过,输出echostr表示接入成功
echo $echostr;
} else {
// 验证失败,输出错误信息或做其他处理
echo 'Token validation failed!';
}