La colonne tutorielle suivante de Laravel vous présentera un petit piège lié à la suppression des cookies dans Laravel. J'espère qu'elle sera utile aux amis qui en ont besoin !
Problème : l'utilisation de Cookie::forget n'a pas réussi à supprimer correctement les cookies.
Comment supprimer correctement les cookies de l'application Laravel ?
En fait, il y a un petit gouffre ici : lorsque nous supprimons Laravel Cookie, nous devons faire attention au retour du résultat de la suppression du cookie !
$cookie = Cookie::forget('refreshToken');// 这里我们返回的时候要使用 withCookie !return response('view')->withCookie($cookie);
La solution ci-dessus convient aux scénarios d'application où la vue est renvoyée après la suppression du cookie.
Cependant, que se passe-t-il si notre requête est une requête API et que le retour est constitué de données JSON, telles que :
Cookie::forget('refreshToken');return ['status' => true];
Comment pouvons-nous supprimer le cookie à ce moment-là ? Dans ce cas, même si on utilise withCookie, cela ne sert à rien !
Donc pour ce scénario d'application, la solution finale est la suivante :
Cookie::queue(Cookie::forget('refreshToken'));return ['status' => true];
Utilisez Cookie::queue pour atteindre l'objectif .
Cela supprimera correctement la valeur de Laravel Cookie.
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!