Cookies เก็บข้อมูลผู้ใช้ในเบราว์เซอร์ เช่น session login ต้องมี name และ value อย่างน้อย
รูปแบบ Cookie
Authentication=AUTHENTICATION_KEY; domain=careerkarma.com
อ่าน Cookies
console.log(document.cookie); // แสดงทั้งหมด
ไม่มี API ดึง cookie เดี่ยว ต้องเขียนฟังก์ชัน parse เอง
ตั้งค่า Cookie
// พื้นฐาน document.cookie = "email=user@email.com"; // กำหนด path document.cookie = "email=user@email.com; path=/dashboard"; // กำหนดวันหมดอายุ (UTC) document.cookie = "email=user@email.com; expires=Wed, 24 Jun 2020 12:00:00 UTC"; // ใช้ Date object const expiryDate = new Date(2020, 5, 30); // เดือน 0-11 document.cookie = "email=user@email.com; expires=" + expiryDate.toUTCString() + ";"; // ใช้ Max-Age (วินาที) - ไม่รองรับทุกเบราว์เซอร์ const maxAge = 24 * 60 * 60 * 2; // 2 วัน document.cookie = "email=user@email.com; max-age=" + maxAge + ";";
อัปเดตและลบ Cookie
// อัปเดต: ตั้งค่าใหม่ชื่อเดิม document.cookie = "email=user@email.app;"; // ลบ: ตั้งค่าว่างและ expires ในอดีต document.cookie = "email=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"
ประเภท Cookies
| ประเภท | คุณสมบัติ |
|---|---|
| Session | หายเมื่อปิดเบราว์เซอร์ (ไม่มี expires) |
| Persistent | คงเหลือหลังปิดเบราว์เซอร์ (มี expires) |
| Third-party | จากโดเมนอื่น เช่น Google Analytics |
สรุป
จัดการ Cookie ผ่าน document.cookie ตั้งค่า name=value พร้อม path, expires, max-age ลบโดยตั้ง expires ในอดีต