【发布时间】:2021-01-02 21:52:04
【问题描述】:
我在控制器中得到 Auth::user() null。使用凭据登录后,我通常会获得经过身份验证的用户数据,但在我的一个项目中,我没有获得经过身份验证的用户数据。
为了解释,我发布了代码 sn-ps。 在 NewLoginController 中,我尝试使用凭据尝试登录,当我尝试使用凭据时它成功登录,我可以看到管理员视图,但是当我尝试使用 /homepage 路由转到主页时,我得到 Auth::check() false并且无法维护应用程序的流程,而在我的其他项目中,它与我使用的流程相同。
谁能指导我解决这个问题?
class NewLoginController extends Controller
{
public function attemptLoginApi()
{
if (Auth::attempt(['username' => request('username'), 'password' => request('password')])) {
$userType = Auth::user()->user_type;
return view('admin');
} else {
toastr()->error('Invalid Credentials', 'Error');
return back();
}
}
}
class HomePageController extends Controller
{
public function getUserHomepage()
{
if (Auth::check()) {
return view('admin');
} else {
return view('home');
}
}
}
web.php
Route::get('/homepage', 'HomePageController@getUserHomepage');
Route::post('/loginApi', 'NewLoginController@attemptLoginApi')->name("loginApi");
【问题讨论】:
标签: php laravel routes laravel-authentication laravel-authorization