iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 12
0

首先,我們要先了解為什麼有 cookie 和 session ,HTTP 本身是一個無狀態的協議,無法紀錄網路上的行為,意思是說當你每次進行頁面的訪問的時候,就好像一張白紙,因為他不會把你之前的行為一起帶過來,每次打開網站都好像第一次見面一樣 lol,所以有 cookis 和 session 的產生。

Cookie

cookie 是一個文字檔,會透過加密的方式,把你在網站上打得文字或是選擇記錄下來。一般來說的應用會在:登入資訊(這樣就不用每次都再登入一次)、購物車紀錄、瀏覽紀錄。

瀏覽器之間的 cookie 不能共用,所以即使是同一台電腦,Chrome 和 Safari 都不會有共同的資訊。 cookie 有保存期限,但時間比較長,除非是自動刪除或是過期,不然 cookie 紀錄會一直都在。

那 cookie 可以在哪裡看到,在網站前面小小?,按一下後,就可以看到你的網站瀏覽紀錄。打開後,可以看到更細項的資訊。

我們可以從上面的圖看到, cookie 提供的資訊:

Name : cookie 名稱
Content : cookie 內容

其他關於安全性跟保存時限的 cookie 屬性:

Expire : 在預設的情況之下, cookie 是暫存性的,所以 expire 可以設定 cookie 過期的時間。

Path: 指和 cookie 建立關聯的網頁,在預設的情況下,是和當前網頁同一個目錄下 cookie 是有效的。

Domain: 可以讓多個伺服器共享 cookie, 預設是 cookie 在的網頁所在的伺服器的主機名。

Secure: 安全性,默認的情況之下, cookie 都不是安全的,如果把 cookie 的 secure 設定成 true ,那這個 cookie 只能用 https 來傳送。

缺點

  1. 隱私問題

cookie 把我們的瀏覽的資訊記錄下來,這樣表示我們的資料可以在經過同意,使用我們的瀏覽資訊。

  1. 安全性

因為 cookie 是用文字檔的方式儲存,意思是可能會被 hacker 入侵修改。

  1. 大小有限制,只能儲存簡單字符串信息

cookie文本的大小(一般為4kb),cookie的數量(一般每個站點20個)存在一些限制,每個站點只能容納20個cookie。


以上,明天見


上一篇
DAY 11 textContent vs innerText vs innerHTML
下一篇
DAY 13 Session 是什麼?
系列文
半路出家,文組新手學 Javascript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言