Maison > cadre php > Laravel > Explication détaillée de la façon de configurer 404 et autres pages d'exception dans le framework laravel (exemple de code)

Explication détaillée de la façon de configurer 404 et autres pages d'exception dans le framework laravel (exemple de code)

不言
Libérer: 2019-01-07 11:09:34
avant
4446 Les gens l'ont consulté

Cet article vous apporte une explication détaillée (exemple de code) de la façon de configurer 404 et d'autres pages d'exception dans le framework laravel. Il a une certaine valeur de référence, j'espère. Cela vous aidera.

Toutes les exceptions dans Laravel sont gérées par la classe Handler, qui contient deux méthodes : report et render, où la méthode render restitue l'exception dans la réponse http. Emplacement du fichier de classe Handler de Laravel : app/Exceptions/Handler. Étant donné que l'exception temporelle de la méthode de rendu est rendue dans la réponse http, il suffit de modifier la méthode de rendu
De nombreuses méthodes sur Internet consistent à modifier la méthode de rendu pour :

public function render($request, Exception $exception)
{
    if ($exception) {
        return response()->view('error.'.$exception->getStatusCode(), [],$exception->getStatusCode());
    }
    return parent::render($request, $exception);
}
Copier après la connexion

Il se peut qu'il n'y ait aucun problème avec votre test pour le moment, mais si vous écrivez une méthode de connexion, si vous visitez une page qui nécessite une connexion, une erreur sera signalée à ce moment

Explication détaillée de la façon de configurer 404 et autres pages dexception dans le framework laravel (exemple de code)

En effet, si vous visitez une page sur laquelle vous devez vous connecter, vous entrerez dans la méthode de rendu app/Exceptions/Handler.php $exception->. ;getStatusCode() n'existe pas, et une erreur sera signalée à ce moment-là. Alors, comment la résoudre ?

À ce moment, nous trouvons la méthode parent::render :

Explication détaillée de la façon de configurer 404 et autres pages dexception dans le framework laravel (exemple de code)

À ce moment, nous constatons que le framework laravel a déjà converti notre Cette situation est incluse, alors nous pouvons changer la méthode ci-dessus en :

public function render($request, Exception $exception)
{
    if (!($exception instanceof AuthenticationException)) {
        return response()->view('error.'.$exception->getStatusCode(), [],$exception->getStatusCode());
    }
    return parent::render($request, $exception);
}
Copier après la connexion

Ce problème est parfaitement résolu à ce moment
Créez ensuite une nouvelle page d'erreur sous resources/view/error/ , la page d'erreur est nommée : {errorcode}..balde.php, où errorcode est le code d'erreur, tel que 404..balde.php

Une fois la configuration terminée, vous pouvez sauter lorsque vous accédez à un non- route existante Rendez-vous sur la page 404 que vous avez configurée


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal