Jwt 身份验证问题 - 凭据无效

Jwt authentication problem - invalid credentials

当我在 Laravel 中对创建的用户使用身份验证时,它是有效的,但是...当我更改为我的数据库时,我无法再验证它。

用户的密码是用bcrypt加密的,当做Hash::check()时,return是true,但是 JWT 验证总是 return 告诉我错误。

我在使用以下代码时遇到问题:

$credentials = $request->only('email', 'senha');
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([
  'access_token'  => $token,
  'token_type'    => 'bearer',
  'expires_in'    => auth()->factory()->getTTL() * 60
]);

我从资源页面本身检查了一些文章,例如 this,而其他一些文章找不到解决方案!

laravel版本是5.2!

编辑

数据库中的字段称为 'email' 和 'senha'(pt-br 语言)。当我更改字段时,错误是相同的!

JWTAuth::attempt($credentials) 部分将查找输入值 'email' 和 'passowrd'.

所以在凭据中你必须通过 $request->only('email', 'password'); 而不是 $request->only('email', 'senha');

我使用 Laravel 标准在银行中创建了一个新的 table 解决了这个问题。