cookie是什么,如何使用cookie?

2022-10-06    分類: 網(wǎng)站建設(shè)

平時(shí)的工作中,我們總聽到別人談到,cookies。聽他們說了之后,我也試著了解了一下,可還是弄不明白它到底用來干啥的,翻了很多資料也不清楚它的深意。今天在這里也寫寫我自己對(duì)cookie的了解。

cookie是什么,如何使用cookie?

 

1、Cookie是保存在客戶端的純文本文件。比如txt文件。所謂的客戶端就是我們自己的本地電腦。當(dāng)我們使用自己的電腦通過瀏覽器進(jìn)行訪問網(wǎng)頁的時(shí)候,服務(wù)器就會(huì)生成一個(gè)證書并返回給我的瀏覽器并寫入我們的本地電腦。這個(gè)證書就是cookie。一般來說cookie都是服務(wù)器端寫入客戶端的純文本文件。下面我們來看一下一般網(wǎng)站寫給我們的cookie 文件如下:

cookie是什么,如何使用cookie?

2、Cookie 文件必須由瀏覽器的支持,在瀏覽器中可以設(shè)置阻止cookie。這樣服務(wù)器端就不能寫入cookie 到客戶端了。目前,大多數(shù)瀏覽器都支持cookie。如谷歌、IE、火狐等。一般來說cookie都不能阻止,因?yàn)?,有時(shí)訪問網(wǎng)站時(shí)必須使用cookie。否則網(wǎng)站將不能被訪問。

3、那么,難題來了,我們用這個(gè)東西到底干什么用呢?舉個(gè)例子,比如我們到網(wǎng)站上買東西,我打開買鞋的網(wǎng)頁,這時(shí)候我發(fā)了請(qǐng)求,告訴服務(wù)器,你給我返回一些鞋的信息和列表,這時(shí)候客戶端和服務(wù)器端的連接就斷開了。用戶再次去訪問,將某雙鞋加入到了購(gòu)物車后連接又?jǐn)嚅_了。這時(shí)用戶又想買條褲子,用戶將褲子也加入了購(gòu)物車,此時(shí)連接又?jǐn)嚅_了。到這時(shí),用戶又再次發(fā)請(qǐng)求說,我要結(jié)賬了,然后用戶打開一個(gè)新的結(jié)賬界面,現(xiàn)在問題來了,這個(gè)用戶剛剛加入的購(gòu)物車的東西服務(wù)器是怎么知道的呢?服務(wù)器是怎么知道是這個(gè)用戶買的東西呢?那么現(xiàn)在就用到了cookie 了。在seesion出現(xiàn)之前,一般網(wǎng)站都是通過cookie保存請(qǐng)求的內(nèi)容,服務(wù)器根據(jù)用戶進(jìn)行特定的內(nèi)容展示。也就是說如果不使用cookie,我們將不能在瀏覽器中看到購(gòu)物車的東西這就類似于瀏覽器的收藏夾,如果我們收藏了,下次我們?cè)俅蜷_瀏覽器窗口就會(huì)看到我們收藏的東西。也就是說cookie保存了一個(gè)前后的狀態(tài),如果不用cookie我就不知道我是否已經(jīng)加入購(gòu)物車了。那為什么會(huì)出現(xiàn)這種情況呢?歸根結(jié)底,就是因?yàn)閔ttp的無連接性。

cookie 到底是怎么工作的呢?

 

首先當(dāng)我們?cè)L問某個(gè)網(wǎng)站時(shí),服務(wù)器首先根據(jù)瀏覽器的編號(hào)生成一個(gè)cookie 返回給客戶端??蛻舳讼麓卧僭L問時(shí)就會(huì)將自己本地的cookie 加上url訪問地址一同給服務(wù)器。服務(wù)器讀出來以此來辨別用戶的狀態(tài)。那么下面我們來畫一個(gè)圖來說明一下:

cookie是什么,如何使用cookie?

 

有時(shí)候,我們?cè)谫I東西的時(shí)候加入購(gòu)物車的內(nèi)容不想保存到數(shù)據(jù)庫中,而是直接保存到cookie中。用戶訪問查詢購(gòu)物車時(shí)只要cookie沒有失效就可以從本地查詢,不需要訪問數(shù)據(jù)庫,這樣加快了查詢速度并且保存了用戶的狀態(tài)。在這里說明一下,cookie包含兩種類型,一種是保存在內(nèi)存中的cookie。這種一般是服務(wù)端沒有設(shè)置生存周期,也就是maxage為負(fù)數(shù)或者0 。這種cookie只在當(dāng)前會(huì)話中有效,關(guān)掉瀏覽器窗口后cookie就立即失效。還有一種是保存在本地客戶端的cookie,這種一般是服務(wù)器設(shè)置了cookie的生存周期maxage為正數(shù),不管你關(guān)掉窗口還是重新打開瀏覽器,還是重啟機(jī)器,只要cookie不失效,那么訪問此網(wǎng)站時(shí),瀏覽器就會(huì)找對(duì)應(yīng)的webapplication的cookies(自己寫入的)。存儲(chǔ)在本地文件的cookie可以被多個(gè)ie瀏覽器窗口共享,意思就是說,如果我打開一個(gè)新的瀏覽器窗口,輸入網(wǎng)頁地址,我們只能看到本地文件的cookie,而上一個(gè)窗口中的內(nèi)存中的cookie不能再新窗口中看到。如果我們?cè)诟复翱诖蜷_一個(gè)子窗口,子窗口會(huì)繼承父窗口的所有類型的cookie。當(dāng)然如果你將本地cookies刪除,那么購(gòu)物車就不會(huì)查到了。下面我用ie瀏覽器給大家做個(gè)演示。

以賣書網(wǎng)站為例如下:

首先清除本地cookies。iE瀏覽器的cookie在C:\Documents and Settings\用戶名\Cookies下。需要注意的是Documents and Settings是隱藏文件,如果要訪問首先查看我的文章“系統(tǒng)無法訪問文件夾拒絕訪問的解決方式”,在這里我們先查看cookies/low/的cookies文件。清除之后我們來訪問網(wǎng)站:

訪問網(wǎng)站后在本地生成了如下cookies 2個(gè)

cookie是什么,如何使用cookie?

選擇本書進(jìn)行查看后又生成了cookie 覆蓋了上次的cookie

cookie是什么,如何使用cookie?

選擇購(gòu)買后

cookie是什么,如何使用cookie?

再買一本后

cookie是什么,如何使用cookie?

過一會(huì)后等購(gòu)物車的數(shù)量刷新后

cookie是什么,如何使用cookie?

每次點(diǎn)一下主窗口cookies一直在變化 如下

cookie是什么,如何使用cookie?

點(diǎn)擊查看購(gòu)物車后,可以看到有兩本書,并且本地存儲(chǔ)又發(fā)生變化了

cookie是什么,如何使用cookie?

cookie是什么,如何使用cookie?

由此可見,我們的cookies一直是在變化的。當(dāng)我們關(guān)閉窗口重新訪問依然可以看到購(gòu)物車?yán)锏纳唐贰?/p>

cookie是什么,如何使用cookie?

因?yàn)樯鲜龅难菔径际遣榭吹膌ow文件夾下的cookies文件變化。當(dāng)我們使用ie清除瀏覽器緩存(直接從本地刪除不能起到同樣的效果,我做實(shí)驗(yàn)了,但是不知道為什么。)后,我們?cè)俅嗡⑿沦?gòu)物車頁面

cookie是什么,如何使用cookie?

可以看到無任何購(gòu)物商品了。

此外,cookie文件也可以用來存放用戶的登錄信息。只有第一次登錄的時(shí)候訪問數(shù)據(jù)庫,只要設(shè)置了過期時(shí)間,下次再登錄后直接讀取cookie存儲(chǔ)的登錄信息,即可達(dá)到不登錄就可以訪問網(wǎng)頁的效果。綜上講述了cookie的文件的實(shí)時(shí)變換情況,到目前為止,我們對(duì)cookie應(yīng)該有個(gè)大致的了解了。我將要寫一篇關(guān)于session的文章,也希望我們共同進(jìn)步。谷歌瀏覽器的查看cookie情況,請(qǐng)查看我的文章“谷歌瀏覽器如何查看cookies”

注意事項(xiàng):

1、注意區(qū)分cookie和session的區(qū)別

2、cookie保存到客戶端,session保存到服務(wù)器端

網(wǎng)站名稱:cookie是什么,如何使用cookie?
分享URL:http://bm7419.com/news/202472.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、營(yíng)銷型網(wǎng)站建設(shè)面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)