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 ».
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 :
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 :
À 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 .
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/*'.
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!