使用Postman进行测试,我可以使用生成的令牌注册/创建新用户,没有问题。当我测试api / login时,会触发“ invalid_credentials”错误。这是功能
public function authenticate(Request $request)
{
$credentials = $request->only('email', 'password');
try {
if (! $token = JWTAuth::attempt($credentials)) {
return response()->json(['error' => 'invalid_credentials'], 400);
}
} catch (JWTException $e) {
return response()->json(['error' => 'could_not_create_token'], 500);
}
return response()->json(compact('token'));
}
其他帖子使我相信它与密码上的哈希值有关。这是在数据库中输入新用户的方式
$user = User::create([
'name' => $request->get('name'),
'email' => $request->get('email'),
'password' => Hash::make($request->get('password')),
]);
默认身份验证保护设置为api。这是api的设置。它具有一个哈希参数。不管是对还是错。
'api' => [
'driver' => 'jwt',
'provider' => 'users',
'hash' => true,
],
答案 0 :(得分:0)
弄清楚了。在用户模型中对密码进行了bcrypt加密