หลายคนอายยังไม่ทราบ หรือ ไม่เข้าใจว่า Cookie และ Session คืออะไร? ต่างกันอย่างไร? มีข้อดีข้อเสียอย่างไร? ซึ่งอาจดูเหมือนว่าจะใช้งานได้เหมือนๆกัน แต่จริงๆแล้วทั้งสองอย่างนี้มีความแตกต่างกันพอสมควร รวมถึงการนำไปใช้งานด้วยเช่นกัน ดังนี้
Cookie คือ ไฟล์เล็กๆที่เว็บเซิร์ฟเวอร์ ส่งให้เบราเซอร์เก็บเอาไว้ หรือเก็บไว้ในเครื่องของผู้ใช้งานเอง โดยที่เมื่อไหร่ก็ตามที่ผู้ใช้งานเว็บไซต์ที่เป็นเจ้าของ Cookie เมื่อเปิดเบราเซอร์อีกครั้ง ข้อมูล Cookie เหล่านั้นก็จะติดไปกับ Request ต่างๆทุกครั้ง ซึ่งไฟล์ Cookie นี้จะอยู่ในเบราเซอร์ตลอดจนกว่าจะถูกลบโดยผู้ใช้เอง
Session คือ ข้อมูลที่เก็บเอาไว้ในฝั่ง Server โดยแต่ละผู้ใช้งาน โดยมี unique id กำกับในแต่ละ Session เอาไว้ ซึ่งตัว id นี้เองจะถูกส่งไปที่เบราเซอร์และเก็บในรูปแบบ Cookie อีกที เวลาที่ผู้ใช้ ใช้งานเว็บไซต์นั้นก็จะส่ง id ไปยังเซิร์ฟเวอร์ด้วย แล้วเซิร์ฟเวอร์ะนำ id ไปดึงข้อมูล Session ที่เก็บไว้ออกมาอีกที ซึ่งข้อมูล Session จะเป็นข้อมูลชั่วคราวที่หมดอายุหลังจากที่ผู้ใช้ออกจากเว็บไปแล้ว
Cookie และ Session มีจุดแตกต่างกันชัดเจน ดังนี้
.
1. การเก็บข้อมูล
- Cookie เก็บฝั่งผู้ใช้
- Session เก็บฝัง Server
.
2. เวลาหมดอายุของข้อมูล
- Cookie เก็บได้ถาวรจนกว่าผู้ใช้จะลบ
- Session นับเวลาหมดอายุหลังผู้ใช้ปิดเว็บ
ความแตกต่างของทั้งสองอย่างนี้นักพัฒนาซอฟแวร์จึงมักนำไปใช้งานที่แตกต่างกัน ดังนี้
.
1. Cookie จะเหมาะกับการเก็บข้อมูลที่นำไปใช้ได้อย่างถาวร หรือใช้ได้เป็นเวลานานจนกว่าจะมีการเปลี่ยนแปลงใหม่ๆ เช่นข้อมูลการตั้งค่าต่างๆที่ผู้ใช้งานเป็นคนกำหนดไว้ โดยสิ่งที่ต้องระวังมากที่สุดก็คือไม่ควรเก็บข้อมูลที่เป็นความลับอย่างรหัสผ่านต่างๆเอาไว้ใน Cookie เพราะการที่ข้อมูลอยู่ในคอมพิวเตอร์ของผู้ใช้ ทำให้อาจจะถูกแก้ไขเปลี่ยนแปลงได้
.
2. Session การที่ข้อมูลถูกเก็บอยู่ที่เซิร์ฟเวอร์ทำให้สามารถเก็บข้อมูลได้ทุกประเภท อย่างเช่นข้อมูลการเข้าสู่ระบบ ทำให้ผู้ใช้สามารถใช้งานเว็บได้โดยทำการเข้าสู่ระบบแค่ครั้งเดียว
.
ดังนั้นแล้ว เว็บผึ้งงานเห็นว่า Cookie และ Session ล้วนมีข้อดีและข้อเสียต่างกันไป โปรแกรมเมอร์หรือนักออกแบบแค่เพียงเลือกใช้กับให้เหมาะสมกับงานก็เท่านั้น
.