<?php 
 
namespace App\Exceptions; 
 
use Exception; 
use Illuminate\Auth\AuthenticationException; 
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; 
 
class Handler extends ExceptionHandler 
{ 
    /** 
     * A list of the exception types that should not be reported. 
     * 
     * @var array 
     */ 
    protected $dontReport = [ 
        \Illuminate\Auth\AuthenticationException::class, 
        \Illuminate\Auth\Access\AuthorizationException::class, 
        \Symfony\Component\HttpKernel\Exception\HttpException::class, 
        \Illuminate\Database\Eloquent\ModelNotFoundException::class, 
        \Illuminate\Session\TokenMismatchException::class, 
        \Illuminate\Validation\ValidationException::class, 
    ]; 
 
    /** 
     * Report or log an exception. 
     * 
     * This is a great spot to send exceptions to Sentry, Bugsnag, etc. 
     * 
     * @param  \Exception  $exception 
     * @return void 
     */ 
    public function report(Exception $exception) 
    { 
        parent::report($exception); 
    } 
 
    /** 
     * Render an exception into an HTTP response. 
     * 
     * @param  \Illuminate\Http\Request  $request 
     * @param  \Exception  $exception 
     * @return \Illuminate\Http\Response 
     */ 
    public function render($request, Exception $exception) 
    { 
        return parent::render($request, $exception); 
    } 
 
    /** 
     * Convert an authentication exception into an unauthenticated response. 
     * 
     * @param  \Illuminate\Http\Request  $request 
     * @param  \Illuminate\Auth\AuthenticationException  $exception 
     * @return \Illuminate\Http\Response 
     */ 
    protected function unauthenticated($request, AuthenticationException $exception) 
    { 
        if ($request->expectsJson()) { 
            return response()->json(['error' => 'Unauthenticated.'], 401); 
        } 
 
        return redirect()->guest(route('login')); 
    } 
} 
 
 |