注意!Laravel刪除Cookie的小坑

下面由laravel教程欄目給大家介紹一個laravel刪除cookie的小坑,希望對需要的朋友有所幫助!

注意!Laravel刪除Cookie的小坑

問題:使用 Cookie::forget 未能正確刪除 cookie。

如何才能正確刪除 Laravel 應用的 Cookie?

其實這里有一個小坑:我們在刪除 Laravel Cookie 的時候,一定要注意返回 Cookie 的刪除結果!

$cookie?=?Cookie::forget('refreshToken');//?這里我們返回的時候要使用?withCookie?!return?response('view')->withCookie($cookie);

以上解決方案適合在刪除 Cookie 后返回視圖的應用場景中。

然而,如果我們的請求是 API 請求,并且返回的是 JSON 數據呢,比如:

Cookie::forget('refreshToken');return?['status'?=>?true];

這個時候我們怎么刪除 Cookie ?這種1情況下即使我們使用 withCookie 也是沒用的!

所以針對這樣的應用場景,最終的解決方案是這樣的:

Cookie::queue(Cookie::forget('refreshToken'));return?['status'?=>?true];

使用 Cookie::queue 來達到目的。

這樣就能正確刪除 Laravel Cookie 的值了。

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享