【类 型】:test
【主 题】:登录token 验证测试 【描 述】: [原因]: [过程]: [影响]: 【结 束】 # 类型 包含: # feat:新功能(feature) # fix:修补bug # docs:文档(documentation) # style: 格式(不影响代码运行的变动) # refactor:重构(即不是新增功能,也不是修改bug的代码变动) # test:增加测试 # chore:构建过程或辅助工具的变动
This commit is contained in:
parent
5be7160028
commit
8f288c0317
@ -14,9 +14,15 @@ class PublicController extends Controller
|
|||||||
//初始化
|
//初始化
|
||||||
public function _initialize()
|
public function _initialize()
|
||||||
{
|
{
|
||||||
|
header('Access-Control-Allow-Headers:Token'); //token请求头
|
||||||
//解构文件头里面的token
|
//解构文件头里面的token
|
||||||
$server = isset($_SERVER) ? $_SERVER : "";
|
$server = isset($_SERVER) ? $_SERVER : "";
|
||||||
$token = isset($server['HTTP_TOKEN']) ? $server['HTTP_TOKEN'] : null;
|
$token = isset($server['HTTP_TOKEN']) && is_string($server['HTTP_TOKEN']) ? $server['HTTP_TOKEN'] : null;
|
||||||
|
// 如果 token 不存在,可以返回错误信息
|
||||||
|
if (!$token) {
|
||||||
|
echo json_encode(array('status' => -1, 'msg' => 'Token 不存在或无效!'));
|
||||||
|
exit();
|
||||||
|
}
|
||||||
$jwtKey = C('jwtKey'); // jwt密钥
|
$jwtKey = C('jwtKey'); // jwt密钥
|
||||||
try {
|
try {
|
||||||
$jwt = JWT::decode($token, new Key($jwtKey, 'HS256')); // 使用密钥和 HS256 算法对 JWT 进行解码
|
$jwt = JWT::decode($token, new Key($jwtKey, 'HS256')); // 使用密钥和 HS256 算法对 JWT 进行解码
|
||||||
@ -29,17 +35,9 @@ class PublicController extends Controller
|
|||||||
// token检测通过 获取用户id
|
// token检测通过 获取用户id
|
||||||
$this->openid = $res_token['openid'];
|
$this->openid = $res_token['openid'];
|
||||||
$this->session_key = $res_token['session_key'];
|
$this->session_key = $res_token['session_key'];
|
||||||
} catch (\UnexpectedValueException $e) {
|
} catch (Exception $e) {
|
||||||
// 捕获JWT解码错误
|
// 捕获解码过程中可能的异常,并返回错误信息
|
||||||
echo json_encode($token);
|
echo json_encode(array('status' => -1, 'msg' => 'Token 无效: ' . $e->getMessage()));
|
||||||
exit();
|
|
||||||
} catch (\DomainException $e) {
|
|
||||||
// 捕获JWT解码错误
|
|
||||||
echo json_encode(array('status' => -1, 'msg' => 'Token 解码失败: ' . $e->getMessage()));
|
|
||||||
exit();
|
|
||||||
} catch (\Exception $e) {
|
|
||||||
// 捕获其他可能的错误
|
|
||||||
echo json_encode(array('status' => -1, 'msg' => '未知错误: ' . $e->getMessage()));
|
|
||||||
exit();
|
exit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ class PublicController extends Controller
|
|||||||
header('Access-Control-Allow-Headers:Token'); //token请求头
|
header('Access-Control-Allow-Headers:Token'); //token请求头
|
||||||
// token 验证
|
// token 验证
|
||||||
$server = isset($_SERVER) ? $_SERVER : "";
|
$server = isset($_SERVER) ? $_SERVER : "";
|
||||||
$token = isset($server['HTTP_TOKEN']) ? $server['HTTP_TOKEN'] : null;
|
$token = isset($server['HTTP_TOKEN']) && is_string($server['HTTP_TOKEN']) ? $server['HTTP_TOKEN'] : null;
|
||||||
// 如果 token 不存在,可以返回错误信息
|
// 如果 token 不存在,可以返回错误信息
|
||||||
if (!$token) {
|
if (!$token) {
|
||||||
echo json_encode(array('status' => -1, 'msg' => 'Token 不存在或无效!'));
|
echo json_encode(array('status' => -1, 'msg' => 'Token 不存在或无效!'));
|
||||||
|
Loading…
Reference in New Issue
Block a user