Php 调用未定义的方法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.

我得到了这个错误:

调用未定义的方法illumb\Auth\TokenGuard::trunt()

根据该代码:

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