Php Laravel 5.4如果未经验证,则重定向到登录
我有我的laravel应用程序的自定义登录页面。但是,我修改了Handler.php,使其第一次看起来像这样Php Laravel 5.4如果未经验证,则重定向到登录,php,laravel-5,Php,Laravel 5,我有我的laravel应用程序的自定义登录页面。但是,我修改了Handler.php,使其第一次看起来像这样 protected function unauthenticated($request, AuthenticationException $exception) { if ($request->expectsJson()) { return response()->json(['error' => 'Unauthentic
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest('login');
}
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect('login');
}
甚至试过这样做
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest('login');
}
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect('login');
}
但是,一旦我登录,就会出现这个错误
我如何解决这个问题?这对我来说很有效
在web.php
Route::get('login', 'Auth\LoginController@login');
Route::group(['middleware' => ['auth']], function() {
// Route::auth();
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest('login');
}
在登录控制器中
public function login(){
return view('login-register');
}
在handler.php
Route::get('login', 'Auth\LoginController@login');
Route::group(['middleware' => ['auth']], function() {
// Route::auth();
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest('login');
}
您收到此错误是因为它位于重定向循环上,可能是因为登录路径也通过了您的“未经验证”方法,所以从中排除登录路径这是导致此错误的问题。这对我不起作用。它给了我403个错误。