Erreur CSRF sous Laravel 5

Je vous livre ici une petite astuce qui m’a été bien utile dernièrement.

Sur le framework Laravel 5 les formulaires soumis doivent tous comporter un champ CSRF, permettant d’éviter les attaques du même nom.
Cependant il peut arriver qu’un utilisateur soumette sans le vouloir deux fois un formulaire et tombe sur cette erreur pas très sexy :

erreur csrf laravel

Pour corriger cela il suffit d’ajouter ce bout de code dans le fichier app/Http/Middleware/VerifyCsrfToken.php :

public function handle( $request, Closure $next )
{
   if (
   $this->isReading($request) ||
   $this->runningUnitTests() ||
   $this->shouldPassThrough($request) ||
   $this->tokensMatch($request)
   ) {
      return $this->addCookieToResponse($request, $next($request));
   }

   return Redirect::back()->withError('Sorry, we could not verify your request. Please try again.');
}

Si une erreur CSFR survient l’utilisateur sera alors redirigé vers la page précédente avec le message d’erreur « Sorry, we could not verify your request. Please try again »

Voila j’espère que cette astuce vous sera aussi utile qu’à moi 🙂

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*