🔹 เกริ่นนำ
Cookies เป็นอีกหนึ่งวิธีในการจัดเก็บข้อมูลฝั่งผู้ใช้แบบถาวรหรือชั่วคราว Laravel รองรับการจัดการ cookie ได้ทั้งในฝั่ง Controller และ Middleware โดยสามารถกำหนดอายุการใช้งาน การเข้ารหัส และความปลอดภัยได้ง่าย
บทนี้จะแนะนำวิธีตั้งค่าและใช้งาน cookie ใน Laravel ตั้งแต่การสร้าง cookie, อ่านค่า และลบ cookie
🔸 การสร้าง Cookie (ฝั่ง Controller)
use Illuminate\Support\Facades\Cookie;
// สร้าง cookie มีอายุ 60 นาที
return response('ตั้งค่า cookie')->cookie(
'username', 'janedoe', 60
);
🔸 การอ่านค่า Cookie
$value = $request->cookie('username');
🔸 การลบ Cookie
return response('ลบ cookie')->withoutCookie('username');
🔸 การเข้ารหัส Cookie (เปิดใช้งานโดยอัตโนมัติ)
Laravel เข้ารหัส cookie ทุกตัวโดย default ผ่าน middleware EncryptCookies
💡 หากต้องการใช้ Cookie แบบไม่ได้เข้ารหัส (เช่น third-party integrations) ให้เพิ่มชื่อ cookie ใน
$except
ภายใน EncryptCookies Middleware
🔸 การใช้งานใน Middleware หรือ Global Response
Cookie::queue('username', 'janedoe', 60);