为了账号安全,请及时绑定邮箱和手机立即绑定

Auth::attempt($credentials) 总是返回 false

Auth::attempt($credentials) 总是返回 false

PHP
吃鸡游戏 2021-10-15 17:50:53
每次我尝试使用 Postman 连接到我的 API 时,我都会收到错误的凭据,尽管数据库中的凭据相同。我试图将数据库中密码列的大小更改为 60。我打印了凭据以检查它们是否正确。身份验证控制器public function login(Request $request) {    $request->validate([        'email' => 'required|string|email',        'password' => 'required|string',    ]);    $credentials = request(['email', 'password']);    if(!Auth::attempt($credentials))        return response()->json([            'message' => 'Unauthorized'        ], 401);    $user = $request->user();    $tokenResult = $user->createToken('Personal Access Token');    $token = $tokenResult->token;    if ($request->remember_me)        $token->expires_at = Carbon::now()->addWeeks(1);    $token->save();    return response()->json([        'access_token' => $tokenResult->accessToken,        'token_type' => 'Bearer',        'expires_at' => Carbon::parse(            $tokenResult->token->expires_at        )->toDateTimeString()    ]);}身份验证文件'defaults' => [    'guard' => 'web',    'passwords' => 'users',],'guards' => [    'web' => [        'driver' => 'session',        'provider' => 'gestionnaires',    ],    'api' => [        'driver' => 'passport',        'provider' => 'clients',        'hash' => false,    ],],'providers' => [    'users' => [        'driver' => 'eloquent',        'model' => App\User::class,    ],    'gestionnaires' => [        'driver' => 'eloquent',        'model' => App\Gestionnaire::class,    ],    'clients' => [        'driver' => 'eloquent',        'model' => App\Client::class,    ],    // 'users' => [    //     'driver' => 'database',    //     'table' => 'users',    // ],],'passwords' => [    'users' => [        'provider' => 'users',        'table' => 'password_resets',        'expire' => 60,    ],],模型    use HasApiTokens, Notifiable;    protected $fillable = [        'name', 'email', 'password',    ];    protected $hidden = [        'password', 'remember_token',    ];api.phpRoute::post('login', 'Auth\AuthController@login')->name('login');
查看完整描述

2 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

尝试这个 :


$credentials = [

 'email' => $request->email,

 'password' => $request->password

 ];

  if(!Auth::attempt($credentials))

    return response()->json([

        'message' => 'Unauthorized'

    ], 401);     


查看完整回答
反对 回复 2021-10-15
?
皈依舞

TA贡献1851条经验 获得超3个赞

我的模型看起来像这样,与user模型非常相似。


    use HasApiTokens, Notifiable;


    protected $fillable = [

        'name', 'email', 'password',

    ];


    protected $hidden = [

        'password', 'remember_token',

    ];


查看完整回答
反对 回复 2021-10-15
  • 2 回答
  • 0 关注
  • 297 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信