超詳細(xì)的Cookie增刪改查

1京景,什么是 Cookie?

Cookie是一些數(shù)據(jù), 存儲于你電腦上的文本文件中骗奖。
當(dāng)web服務(wù)器向?yàn)g覽器發(fā)送web頁面時确徙,在連接關(guān)閉后醒串,服務(wù)端不會記錄用戶的信息。Cookie的作用就是用于解決如何記錄客戶端的用戶信息鄙皇。當(dāng)用戶訪問web頁面時芜赌,他的名字可以記錄在Cookie中。在該用戶下一次訪問該頁面時育苟,可以在Cookie中讀取該用戶的訪問記錄较鼓。

  • 當(dāng)瀏覽器從服務(wù)器上請求web頁面時, 屬于該頁面的Cookie會被添加到該請求中违柏。服務(wù)端可以通過這種方式來獲取用戶的信息。

1.1香椎,存儲形式

Cookie以鍵值對形式存儲漱竖,如下所示:

userName=pony

1.2,常用屬性

屬性 用處 默認(rèn)值
Name
Value
Domain 允許訪問的域 當(dāng)前域
Path 允許訪問的路徑 當(dāng)前路徑
Expires / Max-Age 過期時間 關(guān)閉頁面即清除(Session)
Size 占用字節(jié)大小 無需設(shè)置
Cookie描述

1.3畜伐,大小限制

瀏覽器 大小 (KB) 每個域存儲個數(shù)限制
Firefox 4
Safari 4
Opera 4 30
IE 4 50
Edge 4 50
Chrome 4 50

2馍惹,增 or 改Cookie

/**
 * 設(shè)置cookie
 * @param {String} key 鍵
 * @param {String} value 值
 * @param {String} expires 過期時間(yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss 或 時間戳) => default:頁面關(guān)閉即過期(Session)
 * @param {String} domain 域 => default:當(dāng)前域
 * @param {String} path 路徑 => default:/
*/
function setCookie(key, value, expires = '', domain = window.location.hostname, path = '/') {
  const time = expires ? new Date(expires) : expires
  console.log(time)
  const cookie = `${key}=${value}; expires=${time}; domain=${domain}; path=${path}`
  document.cookie = cookie
}

調(diào)用例子:

setCookie('user', '我是你爸爸', '2022-02-20 16:29:00').
// 或者
setCookie('user', '我是你爸爸', '2022-02-20')
// 或者
const timestamp = new Date('2022-10-01').getTime()
setCookie('user', '我是你爸爸', timestamp)

3,查Cookie

/**
 * 獲取所有cookie的key
 * @return {Array<string>} Cookie鍵組成的數(shù)組 
*/
function getAllCookieKey() {
  const Cookie = document.cookie
  const cookieList = Cookie.split('; ')
  return cookieKeyList = cookieList.map(item => {
    return item.split('=')[0]
  })
}

/**
 * 根據(jù)cookie的key獲取對應(yīng)的值
 * @param {String} key 鍵
 * @return {String} value 值
*/
function cookieKeyGetValue(key) {
  const Cookie = document.cookie
  const cookieList = Cookie.split('; ')
  const cookieKeyList = cookieList.map(item => {
    return item.split('=')[0]
  })
  const index = cookieKeyList.indexOf(key)
  return cookieList[index].split('=')[1]
}

4玛界,刪Cookie

/**
 * 根據(jù)key清除cookie
 * @param {String} key 鍵
 * @param {String} domain 域 => default:當(dāng)前域
 * @param {String} path 路徑 => default:/
*/
function clearCookie(key, domain = window.location.hostname, path = '/') {
  const Time = new Date()
  Time.setTime(Time.getTime() + -1 * 24 * 60 * 60 * 1000)
  const expires = `expires=${Time.toUTCString()}`
  document.cookie = `${key}=; ${expires}; path=${path}; domain=${domain}`
}


// 清除所有cookie
function clearAllCookie() {
  const cookieKeyList = getAllCookieKey()
  for (let key of cookieKeyList) {
    clearCookie(key)
  }
}

如果看了覺得有幫助的万矾,我是@鵬多多,歡迎 點(diǎn)贊 關(guān)注 評論慎框;
END

PS:在本頁按F12良狈,在console中輸入document.querySelectorAll('._2VdqdF')[0].click(),有驚喜哦

往期文章

個人主頁

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末馅精,一起剝皮案震驚了整個濱河市严嗜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌洲敢,老刑警劉巖漫玄,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異压彭,居然都是意外死亡睦优,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進(jìn)店門哮塞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來刨秆,“玉大人,你說我怎么就攤上這事忆畅『馕矗” “怎么了尸执?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長缓醋。 經(jīng)常有香客問我如失,道長,這世上最難降的妖魔是什么送粱? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任褪贵,我火速辦了婚禮,結(jié)果婚禮上抗俄,老公的妹妹穿的比我還像新娘脆丁。我一直安慰自己,他們只是感情好动雹,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布槽卫。 她就那樣靜靜地躺著,像睡著了一般胰蝠。 火紅的嫁衣襯著肌膚如雪歼培。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天茸塞,我揣著相機(jī)與錄音躲庄,去河邊找鬼。 笑死钾虐,一個胖子當(dāng)著我的面吹牛噪窘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播禾唁,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼效览,長吁一口氣:“原來是場噩夢啊……” “哼点寥!你這毒婦竟也來了晾咪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤髓霞,失蹤者是張志新(化名)和其女友劉穎掘托,沒想到半個月后瘦锹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡闪盔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年弯院,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片泪掀。...
    茶點(diǎn)故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡听绳,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出异赫,到底是詐尸還是另有隱情椅挣,我是刑警寧澤头岔,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站鼠证,受9級特大地震影響峡竣,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜量九,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一适掰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧荠列,春花似錦类浪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至锈嫩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間垦搬,已是汗流浹背呼寸。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留猴贰,地道東北人对雪。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像米绕,于是被迫代替她去往敵國和親瑟捣。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容