调用未定义的方法Illuminate \ Auth \ TokenGuard :: attempt() [英] Call to undefined method Illuminate\Auth\TokenGuard::attempt()

查看:1969
本文介绍了调用未定义的方法Illuminate \ Auth \ TokenGuard :: attempt()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到此错误:

调用未定义的方法Illuminate \ Auth \ TokenGuard :: attempt()

Call to undefined method Illuminate\Auth\TokenGuard::attempt()

通过此代码:

if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->passsword], $request->remember)){
            return redirect()->intended(route('admin.dashboard'));
        }else{

我已经导入了Illuminate\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,
        ],
    ],
];

推荐答案

我认为您可能正在尝试使用会话"防护驱动程序而不是令牌".因此,尝试执行以下操作:

I think you are probably trying to use a "session" guard driver instead "token". So, try to do this:

config/auth.php 配置文件中:

'admin-api' => [
    'driver' => 'token',
    'provider' => 'admins',
],

您必须将其更改为

'admin-api' => [
    'driver' => 'session',
    'provider' => 'admins',
],

然后您应该运行:

 php artisan cache:clear
 php artisan config:cache

然后再试一次.祝你好运!

And give it a try again. Good luck!

这篇关于调用未定义的方法Illuminate \ Auth \ TokenGuard :: attempt()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆