cookie總結

須要cookie的緣由

http沒有保存狀態,對每個請求沒法斷定是不是用戶已經登陸或者是還沒登陸,須要引入一種機制,記錄用戶的登陸狀態和保存用戶的登陸信息;引入cookie以後,請求裏會帶上cookie。javascript

cookie的傳遞過程

瀏覽器第一次訪問服務器的時候,服務器在響應請求裏帶上cookie;以後的瀏覽器請求服務器都會帶上這個cookiejava

cookie的屬性

name

這個是cookie的名字,一個域名下面不能有相同名字的cookieweb

value

這個屬性存放cookie的值;這個值要通過編碼; 因爲cookie規定是名稱/值是不容許包含分號,逗號,空格的,因此爲了避免給用戶帶來麻煩,考慮服務器的兼容性,任何存儲cookie的數據都應該被編碼。瀏覽器

domain

指定cookie綁定的域名;服務器

path

指定cookie匹配的web路由;cookie

cookie的有效期

expires

max-age

  1. max-age以秒做爲單位
  2. 當max-age>0的時候,cookie會在max-age以後被刪除;
  3. 當max-age=0的時候,刪除cookie;
  4. 當max-age<0的時候,表示臨時存儲,不會生出cookie文件;

secure

設置cookie只在https和ssl下傳輸;dom

httpOnly

不能經過js腳原本獲取cookie的值;ui

如何操做cookie

瀏覽器端操做

let cookie = document.cookie;

document.cookie = ''

複製代碼

服務器端

設置http頭setCookie編碼

未完待續spa

相關文章
相關標籤/搜索