cookie localStorage sessionStorage session總結(jié)

cookie

???????一句話總結(jié): cookie 是有服務(wù)器端生成的,發(fā)送個(gè)User-Agent,瀏覽器會(huì)將cookie的key/value 保存到一個(gè)目錄的文件中,下次請(qǐng)求的時(shí)候就發(fā)送cookie給服務(wù)器。
??????? 格式Set-Cookie: "name=value;domain=.baidu.com;path=/;expires=Sat, 11 Jun 2016 11:29:42 GMT;HttpOnly;secure"
???????name: 一個(gè)唯一確定的cookie名稱脆诉。通常來講cookie的名稱是不區(qū)分大小寫的
value: 存儲(chǔ)在cookie中的字符串值绽昼。最好為cookie的name和value進(jìn)行url編碼
??????? domain:cookie對(duì)于哪個(gè)域是有效的念链。所有向該域發(fā)送的請(qǐng)求中都會(huì)包含這個(gè)cookie信息蒂培。這個(gè)值可以包含子域(如yq.aliyun.com),也可以不包含它(如:.aliyun.com奠伪,則對(duì)于aliyun.com的所有子域都有效).
???????path: 表示這個(gè)cookie影響到的路徑跌帐,瀏覽器跟會(huì)根據(jù)這項(xiàng)配置首懈,像指定域中匹配的路徑發(fā)送cookie。
???????expires:失效時(shí)間谨敛,表示cookie何時(shí)應(yīng)該被刪除的時(shí)間戳(也就是究履,何時(shí)應(yīng)該停止向服務(wù)器發(fā)送這個(gè)cookie)。如果不設(shè)置這個(gè)時(shí)間戳脸狸,瀏覽器會(huì)在頁面關(guān)閉時(shí)即將刪除所有cookie最仑;不過也可以自己設(shè)置刪除時(shí)間。這個(gè)值是GMT時(shí)間格式炊甲,如果客戶端和服務(wù)器端時(shí)間不一致泥彤,使用expires就會(huì)存在偏差。
???????max-age: 與expires作用相同卿啡,用來告訴瀏覽器此cookie多久過期(單位是秒)吟吝,而不是一個(gè)固定的時(shí)間點(diǎn)。正常情況下牵囤,max-age的優(yōu)先級(jí)高于expires爸黄。
???????HttpOnly: 告知瀏覽器不允許通過腳本document.cookie去更改這個(gè)值,同樣這個(gè)值在document.cookie中也不可見揭鳞。但在http請(qǐng)求張仍然會(huì)攜帶這個(gè)cookie。注意這個(gè)值雖然在腳本中不可獲取梆奈,但仍然在瀏覽器安裝目錄中以文件形式存在野崇。這項(xiàng)設(shè)置通常在服務(wù)器端設(shè)置。
???????secure: 安全標(biāo)志亩钟,指定后乓梨,只有在使用SSL鏈接時(shí)候才能發(fā)送到服務(wù)器,如果是http鏈接則不會(huì)傳遞該信息清酥。就算設(shè)置了secure 屬性也并不代表他人不能看到你機(jī)器本地保存的 cookie 信息扶镀,所以不要把重要信息放cookie就對(duì)了服務(wù)器端設(shè)置。
Cookie能做什么焰轻?
???????Cookie只是一段文本臭觉,所以它只能保存字符串。而且瀏覽器對(duì)它有大小限制以及 它會(huì)隨著每次請(qǐng)求被發(fā)送到服務(wù)器辱志,所以應(yīng)該保證它不要太大蝠筑。 Cookie的內(nèi)容也是明文保存的,有些瀏覽器提供界面修改揩懒,所以什乙, 不適合保存重要的或者涉及隱私的內(nèi)容。

localStorage

???????1. 存儲(chǔ)方式已球。localStorage的存儲(chǔ)方式采用key臣镣、value的方式辅愿。value的值必須為字符串類型(傳入非字符串,也會(huì)在存儲(chǔ)時(shí)轉(zhuǎn)換為字符串忆某。true值會(huì)轉(zhuǎn)換為"true")渠缕。
???????2、同源策略限制褒繁。若想在不同頁面之間對(duì)同一個(gè)localStorage進(jìn)行操作亦鳞,這些頁面必須在同一協(xié)議、同一主機(jī)名和同一端口下棒坏。(IE8和9存儲(chǔ)數(shù)據(jù)僅基于同一主機(jī)名燕差,忽略協(xié)議(HTTP和HTTPS)和端口號(hào)的要求)
???????3 、只在本地存儲(chǔ)坝冕。localStorage的數(shù)據(jù)不會(huì)跟隨HTTP請(qǐng)求一起發(fā)送到服務(wù)器徒探,只會(huì)在本地生效。
???????4喂窟、 永久保存测暗。保存的數(shù)據(jù)沒有過期時(shí)間,直到手動(dòng)去除磨澡。
???????5碗啄、存儲(chǔ)上限限制:不同的瀏覽器存儲(chǔ)的上限也不一樣,但大多數(shù)瀏覽器把上限限制在5MB以下稳摄。
???????6稚字、同瀏覽器共享。localStorage的數(shù)據(jù)可以在同一個(gè)瀏覽器的不同標(biāo)簽頁的同源頁面之間共享

sessionStorage

???????sessionStorage和localstorage類似厦酬。不過其生命周期為當(dāng)標(biāo)簽或者窗口關(guān)閉的時(shí)候

session

???????session機(jī)制是一種服務(wù)器端的機(jī)制胆描,服務(wù)器使用一種類似于散列表的結(jié)構(gòu)(也可能就是使用散列表)來保存信息。 當(dāng)程序需要為某個(gè)客戶端的請(qǐng)求創(chuàng)建一個(gè)session時(shí)仗阅,服務(wù)器首先檢查這個(gè)客戶端的請(qǐng)求里是否已包含了一個(gè)session標(biāo)識(shí)(稱為session id)昌讲,如果已包含則說明以前已經(jīng)為此客戶端創(chuàng)建過session,服務(wù)器就按照session id把這個(gè)session檢索出來使用(檢索不到减噪,會(huì)新建一個(gè))短绸,如果客戶端請(qǐng)求不包含session id,則為此客戶端創(chuàng)建一個(gè)session并且生成一個(gè)與此session相關(guān)聯(lián)的session id旋廷,session id的值應(yīng)該是一個(gè)既不會(huì)重復(fù)鸠按,又不容易被找到規(guī)律以仿造的字符串,這個(gè)session id將被在本次響應(yīng)中返回給客戶端保存饶碘。
???????保存這個(gè)session id的方式可以采用cookie目尖,這樣在交互過程中瀏覽器可以自動(dòng)的按照規(guī)則把這個(gè)標(biāo)識(shí)發(fā)送給服務(wù)器。一般這個(gè)cookie的名字都是類似于SEEESIONID扎运。但cookie可以被人為的禁止瑟曲,則必須有其他機(jī)制以便在cookie被禁止時(shí)仍然能夠把session id傳遞回服務(wù)器饮戳。

四者之間的比較

1、localStorage和sessionStorage的生命周期
localStorage生命周期為永久有效
sessionStorage生命周期為當(dāng)標(biāo)簽或者窗口關(guān)閉的時(shí)候
2洞拨、localStorage和session的共享性
對(duì)于不同的瀏覽器來說扯罐,無法共享localStorage或sessionStorage中的信息。
相同瀏覽器的不同頁面間可以共享相同localStorage烦衣,前提是頁面屬于相同的域名和端口
3歹河、cookie
cookie的主要內(nèi)容包括:名字、值花吟、過期時(shí)間秸歧、路徑和域。路徑與域一起構(gòu)成cookie的作用范圍衅澈。
若不設(shè)置時(shí)間键菱,則表示這個(gè)cookie的生命周期為瀏覽器會(huì)話期間,關(guān)閉瀏覽器窗口今布,cookie就會(huì)消失
4经备、sessionStorage、localStorage部默、cookie的區(qū)別
共同點(diǎn):
都是保存在瀏覽器端侵蒙,并且是同源的(URL的協(xié)議、端口甩牺、主機(jī)名是相同的蘑志,只要有一個(gè)不同就屬于不同源)
不同點(diǎn):
1、cookie數(shù)據(jù)始終在同源的http請(qǐng)求中攜帶(即使不需要)贬派,即cookie在瀏覽器和服務(wù)器間來回傳遞,而session
Storage和localStorage不會(huì)自動(dòng)把數(shù)據(jù)發(fā)送給服務(wù)器澎媒,僅在本地保存搞乏。cookie數(shù)據(jù)還有路徑(path)的概念,可以
限制cookie只屬于某個(gè)路徑下戒努。
2请敦、存儲(chǔ)大小限制也不同,cookie數(shù)據(jù)不能超過4K,sessionStorage和localStorage雖然也有存儲(chǔ)大小的限制5M.
3储玫、 數(shù)據(jù)有效期不同侍筛,sessionStorage僅僅在當(dāng)前瀏覽器窗口關(guān)閉之前有效;
localStorage始終有效撒穷,窗口或者瀏覽器關(guān)閉之后也一直保存匣椰,因此作用持久數(shù)據(jù);
cookie端礼,只在設(shè)置cookie過期時(shí)間之前有效禽笑,即使窗口關(guān)閉或者瀏覽器關(guān)閉入录。
4、作用域不同:sessionStorage在不同的瀏覽器窗口中不共享佳镜,即使是同一個(gè)頁面僚稿,localStorage在所有的同源窗
口中是共享的,cookie也是在所有同源的窗口中共享的蟀伸。
5蚀同、web Storage支持事件通知機(jī)制,可以將數(shù)據(jù)更新的通知發(fā)送給監(jiān)聽者啊掏。
6蠢络、web Storage的api接口使用更方便。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末脖律,一起剝皮案震驚了整個(gè)濱河市谢肾,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌小泉,老刑警劉巖芦疏,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異微姊,居然都是意外死亡酸茴,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門兢交,熙熙樓的掌柜王于貴愁眉苦臉地迎上來薪捍,“玉大人,你說我怎么就攤上這事配喳±掖” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵晴裹,是天一觀的道長(zhǎng)被济。 經(jīng)常有香客問我,道長(zhǎng)涧团,這世上最難降的妖魔是什么只磷? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮泌绣,結(jié)果婚禮上钮追,老公的妹妹穿的比我還像新娘。我一直安慰自己阿迈,他們只是感情好元媚,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般惠毁。 火紅的嫁衣襯著肌膚如雪犹芹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天鞠绰,我揣著相機(jī)與錄音腰埂,去河邊找鬼。 笑死蜈膨,一個(gè)胖子當(dāng)著我的面吹牛屿笼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播翁巍,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼驴一,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了灶壶?” 一聲冷哼從身側(cè)響起肝断,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎驰凛,沒想到半個(gè)月后胸懈,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡恰响,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年趣钱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片胚宦。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡首有,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出枢劝,到底是詐尸還是另有隱情井联,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布您旁,位于F島的核電站低矮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏被冒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一轮蜕、第九天 我趴在偏房一處隱蔽的房頂上張望昨悼。 院中可真熱鬧,春花似錦跃洛、人聲如沸率触。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽葱蝗。三九已至穴张,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間两曼,已是汗流浹背皂甘。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留悼凑,地道東北人偿枕。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像户辫,于是被迫代替她去往敵國和親渐夸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359

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