【发布时间】:2020-11-27 21:01:26
【问题描述】:
我正在尝试使用 JWT 对 Laravel 中的用户进行身份验证。在我的身份验证控制器中,我有这个登录方法:
public function login(Request $request)
{
$jwt_token = null;
$input = $request->only("email", "password");
if (!$jwt_token = auth('users')->attempt($input)) {
return response()->json([
'success' => false,
'message' => 'invalid email or password'
]);
}
return response()->json([
'success' => true,
'token' => $jwt_token,
]);
}
但是尝试方法是“未定义的”。如果我使用也会发生同样的情况
auth('users')->JWTAuth::attempt($input)
对此的任何帮助表示赞赏。
【问题讨论】:
-
请在以后发布此类问题时提供实际错误。测试时我可以看到错误是
"Undefined property: Illuminate\\Auth\\SessionGuard::$JWTAuth"- 所以它抱怨的是一个属性,而不是一个方法。 -
您使用哪个库进行 JWT 身份验证?
-
现在可以使用了,但它是 tymon/jwt-auth。
-
@Aejg 我在这里遇到了同样的问题,你是怎么解决的?
-
@LakwinChandula 我四处询问,一致认为 VS 代码(我使用的 IDE)无法识别所有命令(因此红色曲线)并不少见,因为它只对解决这些事情的代码。我的代码运行良好的事实让我相信这很可能是这种情况。
标签: laravel validation authentication