【发布时间】:2019-12-09 16:07:43
【问题描述】:
我有一个在 X 服务器上运行良好的 laravel 项目,并将相同的项目(相同的代码)放在另一个 Y 服务器上,令我惊讶的是,经过身份验证的路由不起作用,我总是收到未经身份验证的错误,为什么这会发生吗?
{
"message":"Unauthenticated.",
"success":false,
"status_code":500
}
我使用了以下命令: - php工匠护照:安装 - php工匠配置:缓存 - php工匠缓存:清除 - php工匠密钥:生成
但我仍然收到未经身份验证的错误,令牌正在由前端正确传递,它是一个不记名令牌,此令牌是在用户使用 createToken ('myApi') -> accessToken 方法登录时生成的/p>
public function login(AuthLoginRequest $request)
{
$user = User::with('role')->where(['email' => $request->email])->get()->first();
if(!$user){
abort(404, 'userNotFound');
}
if(!password_verify($request->password, $user->password)){
abort(401, 'invalidCredentials');
}
$token = $user->createToken('MyApiToken')->accessToken;
Access::customCreate($request->all(), $user);
$response = [
'id' => $user->id,
'name' => $user->name,
'email' => $user->email,
'profile_image' => $user->profile_image,
'token' => $token,
'old_password_changed' => $user->old_password_changed
];
return response()->json($response, 200);
}
登录代码运行良好,它返回了 Bearer 令牌,但是在使用此令牌发送任何请求后,我得到了未经身份验证的错误。我哪里错了?由于相同的代码可以在另一台服务器上运行。
【问题讨论】:
-
我正在考虑卸载护照并安装 tymondesigns/jwt-auth
-
您是如何使用不记名令牌发送子序列请求的?
-
头授权承载TOKEN_HERE
-
我怀疑是apache的问题。