設置cookie -----cookie被自動添加在require header中--服務端收到cookie瀏覽器
cookie是存儲在瀏覽器中的純文本,瀏覽器的安裝目錄下會專門有一個cookie文件夾存放各個域下設置的cookie安全
發送請求時,瀏覽器會自動檢查是否有相應的cookie,若是有則自動添加在require header中cookie
存儲在cookie中的數據在每次發送請求的時候都會自動放在http請求中,若是這些數據不是每一個請求都須要發給服務端的,那麼這些cookie會增長網絡開銷;若是是,就會大大免去重複添加操做;因此 對於每次請求都要攜帶的信息就適合放在cookie中網絡
有限制: 4Kb 數量最多20個session
expries: http/1.0協議中的選項,必須是GMT格式(經過new Date().toGMTString()或new Date().toUTCString()),默認有效期是session,即會話cookie,瀏覽器關閉後銷燬dom
Max-age: http/1.1協議中,以秒爲時間單位,值爲: 負數 0 整數, 負數表明有效期爲session,0表明刪除,正數表明有效期爲建立時間+max-agexss
domain+path=url,限制cookie被哪些URL訪問ui
設置cookie只在確保安全的請求中才發送,如https協議或其餘安全協議中,默認是cookie不會帶secure選項編碼
在客戶端這隻secure時,需是https協議url
設置是否能經過js訪問,默認狀況下,此項爲空,js能夠進行訪問(讀 刪 修)
若是爲true,這類cookie客戶端沒法設置,只能經過服務端設置
目的: 保障安全,避免遭受xss攻擊
服務端: set-cookie
客戶端: docunment.cookie 注意客戶端設置secure有條件(只有在https協議的網頁中才能成功) 且不能設置httponly
修改: 從新賦值
刪除: 設置過去時間點
編碼: cookie爲字符串,其中的空格 分號 逗號會被當作特殊字符,須要進行編碼.通常採用encodeURIComponent/decodeURIComponent或者encodeURI/decodeURI