token不合法怎么解决(正确处理token不合法的方案)

1、php文件编码问题

用NotPad 打开,是否为UTF-8无BOM编码格式,不是专为UTF-8无BOM编码格式

有空格把空格去掉

不一致无法进行sha1算法验证

4、通过sha1算法验证,还是token验证失败
token不合法怎么解决(正确处理token不合法的方案)

通过日志参查看信服务器访问路径,在浏览器里面打开一遍,发现有echostr内容输出。

方法一、在输出echo $echostr前添加 header(‘content-type:text’);

方法二、最后在echo$echoStr前面加一句ob_clean();

public function valid()

{

$echoStr = $_GET[“echostr”];

if ($this->checkSignature()) {

ob_clean();

echo $echoStr;

exit;

}

}

private function checkSignature()

{

$signature = $_GET[‘signature’];

$timestamp = $_GET[‘timestamp’];

$nonce = $_GET[‘nonce’];

//将时间戳,随机字符串,token按照字母顺序排序,病并连接

$tmpArr = array(self::TOKEN, $timestamp, $nonce);

sort($tmpArr, SORT_STRING);

$tmpStr = implode(“”, $tmpArr);

$token = sha1($tmpStr);

if ($token == $signature) {

return true;

} else {

return false;

}

}

发表评论

登录后才能评论