Php 调用未定义的方法illumb\Auth\TokenGuard::trunt()
我得到了这个错误: 调用未定义的方法illumb\Auth\TokenGuard::trunt() 根据该代码:Php 调用未定义的方法illumb\Auth\TokenGuard::trunt(),php,laravel,Php,Laravel,我得到了这个错误: 调用未定义的方法illumb\Auth\TokenGuard::trunt() 根据该代码: if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)){ return redirect()->intended(route('admin.
if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)){
return redirect()->intended(route('admin.dashboard'));
}else{
我已导入lightlight\Support\Facades\Auth
我的auth.php
可能会有所帮助
<?php
return [
'defaults' => [
'guard' => 'web',
'passwords' => 'users',
],
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],
],
'passwords' => [
'users' => [
'provider' => 'users',
'table' => 'password_resets',
'expire' => 60,
],
'admins' => [
'provider' => 'admins',
'table' => 'password_resets',
'expire' => 15,
],
],
];
我认为您可能试图使用“会话”保护驱动程序而不是“令牌”。因此,尝试这样做:
在config/auth.php配置文件中:
'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],
你必须把它改成
'admin-api' => [
'driver' => 'session',
'provider' => 'admins',
],
然后,您应该运行:
php artisan cache:clear
php artisan config:cache
然后再试一次。祝你好运 令牌保护没有尝试方法,这是会话身份验证中使用的函数。因此,您需要自己授权用户或使用Laravel Passport身份验证您的控制器中是否定义了Auth::guard()方法?看起来它正在尝试使用一个令牌保护程序,如api保护程序,而不是您的管理保护程序。这对那些实际尝试使用令牌保护程序驱动程序而不是会话保护程序驱动程序的人没有帮助。截至去年年中,您还可以使用Sanctum