如何在控制器中不使用 sanctum 中间件获取用户信息
你在构建的 api 要求在用户登录或未登录的情况下都能访问。当不使用 auth:sanctum 中间件时,你无法通过 auth::check() 方法验证用户的登录状态,因为该方法总是返回 false。
为了解决这个问题,你可以直接在控制器中验证用户信息,而不是在中间件中直接返回 401。以下是在控制器中实现此操作的方法:
$auth = IlluminateSupportFacadesAuth::guard('sanctum');
登录后复制
通过上述方式,你现在可以使用 $auth->check() 和 $auth->user() 方法来获取用户信息。这种方法可以让你更灵活地控制用户的验证过程,同时仍然保持 api 的安全性。
以上就是Laravel Sanctum:如何在控制器中不依赖中间件获取用户信息?的详细内容,更多请关注php中文网其它相关文章!