2024-12-02

Laravel Sanctum:如何在控制器中不依赖中间件获取用户信息?

laravel sanctum:如何在控制器中不依赖中间件获取用户信息?

如何在控制器中不使用 sanctum 中间件获取用户信息

你在构建的 api 要求在用户登录或未登录的情况下都能访问。当不使用 auth:sanctum 中间件时,你无法通过 auth::check() 方法验证用户的登录状态,因为该方法总是返回 false。

为了解决这个问题,你可以直接在控制器中验证用户信息,而不是在中间件中直接返回 401。以下是在控制器中实现此操作的方法:

$auth = IlluminateSupportFacadesAuth::guard('sanctum');
登录后复制

通过上述方式,你现在可以使用 $auth->check() 和 $auth->user() 方法来获取用户信息。这种方法可以让你更灵活地控制用户的验证过程,同时仍然保持 api 的安全性。

以上就是Laravel Sanctum:如何在控制器中不依赖中间件获取用户信息?的详细内容,更多请关注php中文网其它相关文章!

https://www.php.cn/faq/1124675.html

发表回复

Your email address will not be published. Required fields are marked *