laravel-5.6 - 在未经身份验证的重定向触发时摆脱错误日志
问题描述
如果用户未注册并尝试访问需要身份验证的页面,我会将访问者重定向到使用 Bolierplate Laravel AuthCode 登录。
但是,当我检查错误日志时,我收到错误。(它在客户端没有任何问题) 错误日志:
Illuminate\Auth\AuthenticationException: Unauthenticated. in /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php:40 Stack trace: #0 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(292): Illuminate\Auth\SessionGuard->authenticate() #1 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(57): Illuminate\Auth\AuthManager->__call('authenticate', Array) #2 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(41): Illuminate\Auth\Middleware\Authenticate->authenticate(Array) #3 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Auth\Middleware\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure)) #4 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #5 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(67): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #6 /home/forge/xyz.com/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(151): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure)) #7 /home/forge/xyz.com/
代码:
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = '/login';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
public function logout()
{
$this->guard()->logout();
return redirect()->route('login');
}
}
解决方案
在您的异常处理程序 ( app/Exceptions/Handler.php ) 中,有一个名为的属性$dontReport
,其中包含不报告的异常列表。
/**
* A list of the exception types that are not reported.
*
* @var array
*/
protected $dontReport = [
//
];
只需将异常类添加到数组中。
protected $dontReport = [
\Illuminate\Auth\AuthenticationException::class
];
推荐阅读
- php - 您的浏览器阻止或不支持 Cookie。您必须启用 cookie 才能使用 WordPress
- angular - Ionic App 和连接到 Spring 后端的独立 Angular 应用程序出现 CORS 错误
- postgresql - 在内部选定资源的更新查询中返回所有行,无论是否更新
- python - 我不知道我在哪里弄乱了我的代码
- oracle - 我如何获得列表日期
- symfony - Symfony 4 在使用 json_decode 请求时返回 null
- c++ - 如何操作 QByteArray 对象而不复制它?
- php - 我想 `start_time` 和 `end_time` 计数如何得到这个?
- r - 如何在循环中使用 cbind 创建矩阵
- javascript - Javascript:如何编写正则表达式来检查符号是否被所有出现的空格包围