เว็บเบราว์เซอร์โต้ตอบกับเว็บไซต์โดยทำตามโปรโตคอล HTTP ต่อไปนี้คือชุดกฎมาตรฐานสำหรับการสื่อสาร
- เมื่อคุณเข้าชมหน้าเว็บ เบราว์เซอร์จะส่งคําขอ HTTP ไปยังทรัพยากรในหน้า เช่น HTML, CSS, JavaScript และรูปภาพ
- เมื่อเซิร์ฟเวอร์ HTTP (เว็บเซิร์ฟเวอร์ที่โฮสต์เว็บไซต์) ได้รับคําขอ HTTP ที่ถูกต้องจากเบราว์เซอร์ เซิร์ฟเวอร์จะตอบสนองต่อเบราว์เซอร์ด้วยการตอบกลับ HTTP
- คำขอและการตอบกลับอาจมีข้อมูลเพิ่มเติมที่เรียกว่าส่วนหัว HTTP
ตัวอย่างเช่น ลองพิจารณาเว็บไซต์ cats.example.
ส่งคำขอ
การเข้าถึงหน้า cats.example
จะเริ่มต้นชุดคําขอไปยังโดเมนต่างๆ ซึ่งรวมถึงคำขอรูปภาพที่โฮสต์ใน cats.example
เอง คำขอสคริปต์การวิเคราะห์จาก analytics.example
และคำขออื่นๆ สำหรับทรัพยากรเพิ่มเติมจากโดเมนอื่นๆ
คําขอ HTTP สามารถเสริมด้วยส่วนหัวของคําขอ HTTP เพื่อระบุข้อมูลเพิ่มเติมจากเบราว์เซอร์ไปยังเว็บเซิร์ฟเวอร์ เช่น มักมีการใส่ส่วนหัวต่อไปนี้
Accept-Language: en-US
ส่วนหัวนี้ระบุภาษาที่ผู้ใช้ต้องการ ซึ่งในกรณีนี้คือภาษาอังกฤษ (สหรัฐอเมริกา)User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
ส่วนหัวนี้ให้รายละเอียดเกี่ยวกับเบราว์เซอร์และระบบปฏิบัติการของผู้ใช้ ซึ่งในกรณีนี้คือ "Mozilla/5.0" (ตระกูลเบราว์เซอร์), "Macintosh" (ระบบปฏิบัติการ) และ "Chrome/127.0.0.0" (เวอร์ชันเบราว์เซอร์)
คำตอบ
เมื่อเว็บเซิร์ฟเวอร์ได้รับคําขอที่ถูกต้องจากเบราว์เซอร์ เซิร์ฟเวอร์จะส่งการตอบกลับไปยังเบราว์เซอร์พร้อมทรัพยากรที่ขอ ("เพย์โหลด") ซึ่งได้แก่ HTML, CSS, JavaScript, ไฟล์รูปภาพ, วิดีโอ หรือข้อมูลอื่นๆ เช่นเดียวกับที่คำขอแต่ละรายการจากเบราว์เซอร์อาจมีส่วนหัวคำขอ การตอบกลับแต่ละรายการจากเซิร์ฟเวอร์ก็อาจมีส่วนหัวการตอบกลับได้ ระบบจะส่งส่วนหัวการตอบกลับเหล่านี้ไปพร้อมกับเพย์โหลด
ส่วนหัว Set-Cookie
ที่รวมอยู่กับการตอบกลับจะบอกให้เบราว์เซอร์จัดเก็บข้อความบางส่วน ได้แก่ ชื่อและค่า ซึ่งเรียกว่าคุกกี้ HTTP ในการตอบสนองต่อคำขอ cats.example/images/cat.jpg
เซิร์ฟเวอร์ cats.example
ระบุส่วนหัว Set-Cookie:cat=tabby
ซึ่งจะสั่งให้เบราว์เซอร์เก็บคุกกี้ชื่อ cat ที่มีค่า tabby
จากนั้นคุกกี้ดังกล่าวจะรวมอยู่ในคำขอที่ส่งไปยัง cats.example,
จนกว่าคุกกี้จะหมดอายุหรือถูกนำออก
ซึ่งช่วยให้เซิร์ฟเวอร์เก็บรักษาข้อมูลเกี่ยวกับผู้ใช้ในหน้าเว็บหรือเซสชันหลายหน้าได้ เช่น ผู้ใช้เห็นรูปภาพแมวลายสลิด
ส่วนหัว | การดำเนินการ | ตัวอย่าง | เอฟเฟกต์ | |
---|---|---|---|---|
การตอบกลับ HTTP เซิร์ฟเวอร์ไปยังเบราว์เซอร์ |
Set‑Cookie
|
เว็บเซิร์ฟเวอร์ขอให้เบราว์เซอร์ของคุณจัดเก็บคุกกี้ | Set‑Cookie:cat=tabby |
เบราว์เซอร์จะจัดเก็บคุกกี้ไว้และส่งในคำขอต่อๆ ไปไปยังเซิร์ฟเวอร์ที่ตั้งค่าไว้ |
คำขอ HTTP เบราว์เซอร์ไปยังเซิร์ฟเวอร์ |
Cookie |
เบราว์เซอร์ของคุณให้คุกกี้ | Cookie:cat=tabby |
คุกกี้จะพร้อมใช้งานสำหรับเซิร์ฟเวอร์ที่เป็นปลายทางของคำขอ |
เดโม
- 1pc.glitch.me: การสาธิตคุกกี้ของบุคคลที่หนึ่ง
- 3pc.glitch.me: การสาธิตคุกกี้ของบุคคลที่สาม
เครื่องมือ
- ดู เพิ่ม แก้ไข และลบคุกกี้ในเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome
- เครื่องมือวิเคราะห์ของ Privacy Sandbox