Maison >cadre php >Laravel >Comment désactiver csrf dans Laravel

Comment désactiver csrf dans Laravel

青灯夜游
青灯夜游original
2021-12-21 11:34:072086parcourir

Méthode : 1. Ouvrez le fichier "Kernel.php" sous l'application, recherchez et commentez le code "AppHttpMiddlewareVerifyCsrfToken". 2. Ouvrez le fichier « VerifyCsrfToken.PHP » sous l'application et modifiez l'attribut « $sauf ».

Comment désactiver csrf dans Laravel

L'environnement d'exploitation de ce tutoriel : système Windows 7, version Laravel 5, ordinateur DELL G3.

Si vous utilisez Laravel, vous connaîtrez la fonction de vérification csrf. S'il n'y a pas de csrf_token lorsque la valeur de la publication est transmise, l'erreur suivante sera signalée :

Comment désactiver csrf dans Laravel

C'est parce que dans les versions postérieures à 5.2, le web sera ajouté à la route par le middleware par défaut.

Il y a la configuration suivante dans le fichier app/Http/Kernel.php :

Comment désactiver csrf dans Laravel

Fermer tout

À ce stade, tout le monde doit savoir comment désactiver cette vérification. Il suffit de commenter la ligne de code marquée dans l'image ci-dessus, ce qui désactivera la vérification CSRF, mais cela désactivera tout .


Partiellement fermé

Lorsque nous écrivons l'interface, nous rencontrerons ce problème : parce que csrf_token ne peut pas être transmis via l'interface (csrf_token est généré dans laravel), nous voulons uniquement désactiver la vérification csrf lors des requêtes api, l'arrière-plan du site n'est pas fermé.

Cela nécessite de modifier le fichier appHttpMiddlewareVerifyCsrfToken.php

Il y a un attribut $sauf dans le fichier, qui peut définir quelles routes n'ont pas besoin d'être soumises à la vérification csrf Comme suit, je veux que les routes commençant par api ne le soient pas. sous réserve de vérification csrf. Il me suffit d'ajouter ' api/*'.

Comment désactiver csrf dans Laravel

De cette façon, je n'obtiendrai pas d'erreur lorsque je visiterai http://***/laravel/public/api/index.

Recommandations associées : Les cinq derniers didacticiels vidéo Laravel

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!

Déclaration:
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