當我們在 Stackoverflow 上尋找為什麼會出現某個 bug 時,常常會在網站的左下角看到一個視窗,要你點選「同意所有 cookies」 cookie 究竟代表的是什麼意思呢?

簡單來說,cookie 會儲存你之前在這個網站所做過的動作,並存在記憶體中,由於 HTTP 是無狀態的(Stateless),也就是說伺服器不會記得使用者前面做過了什麼事,所以只要你關閉網站或是跳頁,伺服器就不會認得使用者之前所做過的動作。在登入時,常常會看到已經幫我們自動填入帳號密碼,那也是因為有了 cookie 的功勞!

Cookie 依照儲存位置可分為「記憶體 Cookie」和「硬碟 Cookie」

  1. 由瀏覽器管理,存在記憶體中
  2. 瀏覽器關閉,資料就會消失
  3. 儲存時間較短暫
  1. 存在硬碟中
  2. 有有效期限,時間到了或是使用者手動清理,Cookie 就會被清除
  3. 儲存時間較長

打開 Chrome 瀏覽器,點選右上角的三個點點>「設定」>「隱私性和安全性」>「Cookie 和其他網站資料」>「顯示所有 Cookie 和網站資料」,就能看到瀏覽器中的所有網站的 Cookie 和裡面的資料了!

你想說有 Cookie 這麼方便的東西,我們還需要別的東西嗎? 需要,因為下面的這些限制,我們還有 Local Storage 和 Session Storage,至於這兩個是什麼會在下一篇介紹

  1. 一個 Cookie 最多只能儲存 4KB 的資料
  2. 客戶端可以儲存的 Cookie 最大數量是 300 個,若超過會自動刪除多出來的