为什么Auth指定guard后会提示没有attempt方法?

我查了些文章,都是这么用的啊,到了我这指定守卫guard后就不好使了。。。
提示找不到attempt方法?
看Auth的代码好像引入了一个Guard类,这个类里确实没有attempt,那该怎么验证登录?

* @see \Illuminate\Contracts\Auth\Guard

别人都是这么用的

if(!Auth::guard('admin')->attempt($arr))
{
    ...
}

我的却报错。。。

解决方法

多谢各位的回答,可能我没表述清楚,我是用passport验证登录的,好像passport指定guard之后就是会找不到attempt方法,我都看混乱了。
最后的解决方式是自定义验证,这个在passport文档里有提到

// 先查询出用户
$user = AdminUser::where('name',$request->name)->where('phone',$request->phone)->first();
// 再验证密码
if(!$user || !Hash::check($request->password, $user->password)){
    return response()->json([
         'message' => 'Unauthorized'
    ], 401);
}
// 生成token
$tokenResult = $user->createToken('admin_'.$user->id);
$token = $tokenResult->token;
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

"laravel/framework": "^8.12" 有啊,我都可以使用

2年前 评论
BlueDestiny (楼主) 2年前
liaosp (作者) 2年前
BlueDestiny (楼主) 2年前
liaosp (作者) 2年前
BlueDestiny (楼主) 2年前
讨论数量: 5
Hesunfly

你可以试试 phpstorm,如果用的就是的话,当我没说

2年前 评论
BlueDestiny (楼主) 2年前

5.7好像是有的。

2年前 评论
BlueDestiny (楼主) 2年前

"laravel/framework": "^8.12" 有啊,我都可以使用

2年前 评论
BlueDestiny (楼主) 2年前
liaosp (作者) 2年前
BlueDestiny (楼主) 2年前
liaosp (作者) 2年前
BlueDestiny (楼主) 2年前

passport实现的接口不一样 打开

Laravel\Passport\PassportServiceProvider 

他之下的makeGuard

2年前 评论
BlueDestiny (楼主) 2年前
wdnmd (作者) 2年前
BlueDestiny (楼主) 2年前
wdnmd (作者) 2年前
66
$token = auth('admin')->attempt($validated)

可以呀。。。
试试用全局方法

auth()

如果用Auth::
看下是引用的类对不对~~~

use Illuminate\Support\Facades\Auth;
2年前 评论
BlueDestiny (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!