为什么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;
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

"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年前

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