一、Cookie是什么意思
cookie有時候也用復(fù)數(shù)形式Cookies,指某些網(wǎng)站為辨別用戶身份、進行Session跟蹤而儲存在用戶本地終端上的數(shù)據(jù)(通常經(jīng)過加密),由用戶客戶端計算機暫時或永久保存。簡單來說,它能讀取保存用戶訪問網(wǎng)站時的行為信息,如訪問網(wǎng)頁時提示是否保存用戶名和密碼,下次登錄可自動登錄。
二、Cookie的分類
1. 按在客戶端中的存儲位置
可分為內(nèi)存Cookie和硬盤Cookie。內(nèi)存Cookie由瀏覽器維護,保存在內(nèi)存中,瀏覽器關(guān)閉即消失,存在時間短暫;硬盤Cookie保存在硬盤里,有過期時間,除非用戶手動清理或到了過期時間,否則不會清除,存在時間較長。所以,按存在時間,可分為非持久Cookie和持久Cookie。
2. 根據(jù)存在時間和來源
| 特性 | 第一方 Cookie | 第三方 Cookie |
|---|---|---|
3. 會話 Cookie vs. 持久 Cookie
| 特性 | 會話 Cookie | 持久 Cookie |
|---|---|---|
三、Cookie的工作原理
Cookie是服務(wù)器或腳本在HTTP協(xié)議下維護客戶端工作站信息的一種方式,是web服務(wù)器保存在用戶瀏覽器(客戶端)上的小文件,可能包含用戶登錄信息、訪問信息等數(shù)據(jù)。用戶連接服務(wù)器時,網(wǎng)站可訪問cookie信息。
用戶第一次訪問并登陸網(wǎng)站時,cookie設(shè)置及發(fā)送經(jīng)歷4個步驟:客戶端發(fā)送請求到服務(wù)器 → 服務(wù)器發(fā)送包含Set - Cookie頭部的HttpResponse響應(yīng)到客戶端 → 客戶端保存cookie,之后向服務(wù)器發(fā)送請求時,HttpRequest請求中包含Cookie頭部 → 服務(wù)器返回響應(yīng)數(shù)據(jù)。
許多網(wǎng)站開發(fā)人員用cookie技術(shù)跟蹤用戶訪問數(shù)據(jù)、分析偏好、調(diào)整“推薦算法”,廣泛應(yīng)用于會話對象。Cookie數(shù)據(jù)對搜索引擎重要,蜘蛛程序抓取緩存數(shù)據(jù)判斷網(wǎng)頁質(zhì)量并評分。
Cookie文件需瀏覽器支持,可在瀏覽器中設(shè)置阻止cookie,多數(shù)瀏覽器(如谷歌、IE、火狐)支持cookie,一般不能阻止,因有時訪問網(wǎng)站必須使用。
四、Cookie設(shè)置
瀏覽器設(shè)置cookie功能的一般方法為:
- 在IE頁面的右上角點擊"工具"按鈕。
- 彈出下拉菜單,選擇"internet選項"。
- 打開"internet選項"后,選擇"隱私"按鈕,設(shè)置為中。
- 點擊"高級",彈出對話框,勾選"替代自動cookie處理",勾選"總是允許會話cookie"。
- 點擊確定,瀏覽器cookie功能啟用。
五、Cookie的作用
存儲cookie是瀏覽器功能,cookie是存儲在瀏覽器中的純文本,瀏覽器安裝目錄下有專門文件夾存放。其主要作用是跟蹤記錄用戶對網(wǎng)頁設(shè)置的修改,下次訪問時網(wǎng)頁分析cookie返回個性化網(wǎng)頁。
具體作用如下:
- 會話狀態(tài)管理(如用戶登錄狀態(tài)、購物車、游戲分數(shù)或其它需要記錄的信息);
- 個性化設(shè)置(如用戶自定義設(shè)置、主題等);
- 瀏覽器行為跟蹤(如跟蹤分析用戶行為等)。
Cookie曾是客戶端數(shù)據(jù)唯一存儲手段,現(xiàn)因帶來性能開銷(尤其在移動環(huán)境)逐漸被淘汰。新瀏覽器API允許開發(fā)者直接將數(shù)據(jù)存儲到本地,如使用Web storage API(本地存儲和會話存儲)或IndexedDB。
六、如何刪除Cookie
- 在瀏覽器的更多設(shè)置功能選項中找到互聯(lián)網(wǎng)選項或清除瀏覽記錄選項,打開后有cookie清洗選項,選擇可刪除。
- 若只需刷新當前頁面,按鍵盤ctrl + f5,強制刷新頁面,相當于刪除緩存重新刷新。
七、Cookie的安全問題
Cookie技術(shù)誕生后,成為網(wǎng)絡(luò)用戶和網(wǎng)絡(luò)開發(fā)者爭論焦點。一些網(wǎng)絡(luò)用戶和資深Web專家對其不滿意,不是因功能弱或技術(shù)性能問題,而是因Cookie使用危害網(wǎng)絡(luò)用戶隱私,它是網(wǎng)絡(luò)服務(wù)器保存在用戶瀏覽器上的小文本文件,包含用戶信息。
八、Cookie的缺陷
- Cookie會被附加在每個HTTP請求中,增加流量。
- HTTP請求中的Cookie明文傳遞,安全性差,除非使用超文本傳輸安全協(xié)定。
- Cookie大小限制在4KB左右,復(fù)雜存儲需求不夠用。
九、Cookie和session的區(qū)別
- 存儲位置不同:cookie數(shù)據(jù)信息存放在客戶端瀏覽器上;session數(shù)據(jù)信息存放在服務(wù)器上。
- 存儲容量不同:單個cookie保存數(shù)據(jù)≤4KB,一個站點最多保存20個Cookie;session無上限,但出于服務(wù)器性能考慮,不要存放過多東西并設(shè)置刪除機制。
- 存儲方式不同:cookie只能保管ASCII字符串,需編碼存儲Unicode字符或二進制數(shù)據(jù);session能存儲任何類型數(shù)據(jù),包括string,integer,list,map等。
- 隱私策略不同:cookie對客戶端可見,不安全,可能被分析欺騙;session存儲在服務(wù)器上,對客戶端透明,無敏感信息泄漏風險。
- 有效期不同:開發(fā)可設(shè)置cookie屬性使其長期有效;session依賴名為JSESSIONID的cookie,其過期時間默認為 - 1,關(guān)閉窗口session失效,不能長期有效。
- 服務(wù)器壓力不同:cookie保管在客戶端,不占服務(wù)器資源,并發(fā)用戶多的網(wǎng)站是不錯選擇;session保管在服務(wù)器端,每個用戶產(chǎn)生一個session,并發(fā)訪問用戶多會產(chǎn)生大量session,耗費大量內(nèi)存。
- 瀏覽器支持不同:若客戶端瀏覽器不支持cookie,會話跟蹤失效,WAP應(yīng)用常規(guī)cookie無用,運用session需URL地址重寫;若客戶端支持cookie,可設(shè)為本瀏覽器窗口及子窗口或所有窗口內(nèi)有效,session只能在本窗口及子窗口內(nèi)有效。
- 跨域支持不同:cookie支持跨域名訪問;session不支持跨域名訪問。
用戶1
2025/11/15 9:00:05AI内容优化:提升网站流量与用户体验的关键策略