cookie是什么意思?大家對cookie應(yīng)該都熟悉,我們經(jīng)常上網(wǎng)都知道,我們登錄網(wǎng)站一段時(shí)間之后,會要求從新登錄,其實(shí)這都是和cookie有關(guān),下面我們來具體詳解一下cookie是什么意思?
cookie 的出現(xiàn)是因?yàn)?HTTP 是無狀態(tài)的一種協(xié)議,換句話說,服務(wù)器記不住你,可能你每刷新一次網(wǎng)頁,就要重新輸入一次賬號密碼進(jìn)行登錄。這顯然是讓人無法接受的,cookie 的作用就好比服務(wù)器給你貼個(gè)標(biāo)簽,然后你每次向服務(wù)器再發(fā)請求時(shí),服務(wù)器就能夠 cookie 認(rèn)出你。
抽象地概括一下:一個(gè) cookie 可以認(rèn)為是一個(gè)「變量」,形如name=value,存儲在瀏覽器;一個(gè) session 可以理解為一種數(shù)據(jù)結(jié)構(gòu),多數(shù)情況是「映射」(鍵值對),存儲在服務(wù)器上。
注意,我說的是「一個(gè)」cookie 可以認(rèn)為是一個(gè)變量,但是服務(wù)器可以一次設(shè)置多個(gè) cookie,所以有時(shí)候說 cookie 是「一組」鍵值對兒,這也可以說得通。
cookie 可以在服務(wù)器端通過 HTTP 的 SetCookie 字段設(shè)置 cookie,比如我用 Go 語言寫的一個(gè)簡單服務(wù):
cookie是瀏覽器保存在用戶電腦上的一小段文本,通俗的來講就是當(dāng)一個(gè)用戶通過 http訪問到服務(wù)器時(shí),服務(wù)器會將一些 Key/Value鍵值對返回給客戶端瀏覽器,并給這些數(shù)據(jù)加上一些限制條件,在條件符合時(shí)這個(gè)用戶下次訪問這個(gè)服務(wù)器時(shí),數(shù)據(jù)通過請求頭又被完整地給帶回服務(wù)器,服務(wù)器根據(jù)這些信息來判斷不同的用戶。
cookie主要的作用很簡單,一般情況下,就是對服務(wù)器給每個(gè)客戶端(瀏覽器)打的標(biāo)簽,從而方便服務(wù)器辨認(rèn)而已。當(dāng)然,HTTP 還有很多參數(shù)可以設(shè)置 cookie,比如過期時(shí)間,或者讓某個(gè) cookie 只有某個(gè)特定路徑才能使用等等。
現(xiàn)在網(wǎng)站的功能有很多,有的會涉及很多的數(shù)據(jù)交互,比如說電商網(wǎng)站的購物車功能,信息量大,而且結(jié)構(gòu)也比較復(fù)雜,無法通過簡單的 cookie 機(jī)制傳遞這么多信息,而且要知道 cookie 字段是存儲在 HTTP header 中的,就算能夠承載這些信息,也會消耗很多的帶寬,比較消耗網(wǎng)絡(luò)資源。
以上就是對cookie是什么意思的全部介紹,如果您想了解更多有關(guān)其他常見問題,請及時(shí)關(guān)注我們。