Wie werfen verboten, Ausnahme von der middleware in laravel5?
Schreibe ich eine middleware in laravel 5. Ich möchte zu werfen verboten, mit Ausnahme code 403 von middleware. Mein middleware-Funktion wird unten gegeben:
use Exception;
public function handle($request, Closure $next)
{
if (!Auth::check()) {
throw new Exception("Access denied", 403);
}
return $next($request);
}
Rufe ich meine middleware von controller und ich erhalte die Fehlermeldung mit code 500, aber nicht 403. Wie kann ich dies beheben?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einfach die
abort()
Helfer. (OderApp::abort()
)Können Sie mit diesen Ausnahmen in
App\Exceptions\Handler
durch überschreibenrender()
Zum Beispiel:if ($e instanceof ModelNotFoundException || $e instanceof NotFoundHttpException || $e instanceof MethodNotAllowedHttpException) { return new JsonResponse($error_response, 404); }
use
dieSymfony\Component\HttpKernel\Exception\HttpException
? Denn das ist, wasabort()
wirft.