我安装了 composer require tinywan/jwt 。
我在用 webman 生成接口,给小程序和 app 使用,用户的所有操作,都需要带上手机号,你确保身份唯一。
如果有人按照我设置的规则, 并且更改了手机号,生成了 jwt , 我还需要不需要在接口里去验证token里的手机号和用户传递过来的手机号是否一样?或者用户用正确的 token ,但是更改了传递过来的手机号,我是否需要验证?
public function venueOrderinfoVerification(Request $request, string $local_order_number){
// 获取 TokenVerifyMiddleware 里已经解密好的用户数据
$staffinfo = $request->data;
$param = [
'mobile' => $request->get('mobile'),
'local_order_number' => $local_order_number,
];
$validate = new VenueOrderinfoVerificationValidate();
if (!$validate->check($param)) {
return json($validate->getError());
}
// 去除传递过来参数的前后空格
$param = array_map('trim', $param);
// 这部分多余不????????
if ($param['mobile'] != $staffinfo['mobile']){
return json([
// 'HTTP_FAIL_REQUEST' => [200112, '非法请求,请确认请求者身份。'],
'code' => config('myconfig.statusCode.HTTP_FAIL_REQUEST')[0],
'msg' => config('myconfig.statusCode.HTTP_FAIL_REQUEST')[1],
'data' => [],
]);
}
// 业务逻辑...
return json([
// 'HTTP_OK' => [200100, '请求成功'],
'code' => config('myconfig.statusCode.HTTP_OK')[0],
'msg' => config('myconfig.statusCode.HTTP_OK')[1],
'data' => [],
]);
}
签名认证失败,都认为是无效访问令牌。
token 传过来 不是应该还要在服务端自行验证吗?你可以将所有的电话号码提前放在内存;到时候在内存验证 就可以了
签名认证失败,直接返回401状态码就行了
难道你不验证令牌的?