2017-06-15 50 views
1

该auth.php文件具有以下代码如何在Laravel中使用多个身份验证密码?

'guards' => [ 
     'web' => [ 
      'driver' => 'session', 
      'provider' => 'users', 
     ], 

     'api' => [ 
      'driver' => 'passport', 
      'provider' => 'users', 
     ], 

     'apidriver' => [ 
      'driver' => 'passport', 
      'provider' => 'drivers', 
     ], 
    ], 


    'providers' => [ 
     'users' => [ 
      'driver' => 'eloquent', 
      'model' => App\User::class, 
     ], 
     'drivers' => [ 
      'driver' => 'eloquent', 
      'model' => App\Models\Driver::class, 
     ], 

    ], 

这是对于驾驶员

if (Auth::guard('apidriver')->attempt(['email'=>request('email'), 
    'password'=>request('password')])) { 

    $driver=Auth::guard('apidriver')->user(); 

    $success['token'] = $driver->createToken('Pizza App')->accessToken; 

    return response()->json(['success' => $success], $this->successStatus); 

}else{ 

return response()->json(['errorrr'=>'Unauthorised'], 401); 

    } 

认证码,并生成下面的错误访问

电话未定义的方法照亮时\ Auth \ RequestGuard :: attempt()

当用户认证码正常工作时

回答

0

你是不是您解析请求参数正常,
替换该行

if(Auth::guard('apidriver')>attempt(['email'=>request('email'),'password'=>request('password')])) 

与此:

if (Auth::guard('apidriver')->attempt(['email'=>request('email'),'password'=>request('password')])) 

也检查你在你的班上名列前茅称为Illuminate\Http\Request;

相关问题