private function getToken()
{
$tokenName = $this->config['token_name'];
$tokenType = $this->config['token_type'];
if (!isset($_SESSION[$tokenName])) {
$_SESSION[$tokenName] = [];
}
// 标识当前页面唯一性
$tokenKey = md5($_SERVER['REQUEST_URI']);
if (isset($_SESSION[$tokenName][$tokenKey])) {
// 相同页面不重复生成session
$tokenValue = $_SESSION[$tokenName][$tokenKey];
} else {
$tokenValue = is_callable($tokenType) ? $tokenType(microtime(true)) : md5(microtime(true));
$_SESSION[$tokenName][$tokenKey] = $tokenValue;
if (IS_AJAX && $this->config['token_reset']) {
header($tokenName . ': ' . $tokenKey . '_' . $tokenValue);
}
//ajax需要获得这个header并替换页面中meta中的token值
}
return [$tokenName, $tokenKey, $tokenValue];
}