Cookie的實現原理

Cookie定義了一些HTTP請求頭和HTTP響應頭,通過這些HTTP頭信息使服務器可以與客戶進行狀態交互。

    客戶端請求服務器後,如果服務器需要記錄用戶狀態,服務器會在響應信息中包含一個Set-Cookie的響應頭,客戶端會根據這個響應頭存儲Cookie信息。再次請求服務器時,客戶端會在請求信息中包含一個Cookie請求頭,而服務器會根據這個請求頭進行用戶身份、狀態等較驗。

 

 

下面是一個實現Cookie機制的,簡單的HTTP請求過程:

 

1. 客戶端請求服務器

    客戶端請求IT筆錄網站首頁,請求頭如下:

    GET / HTTP/1.0

    HOST: itbilu.com

2. 服務器響應請求

    Cookie是一種key=value形式的字符串,服務器需要記錄這個客戶端請求的狀態,因此在響應頭中包一個Set-Cookie字段。響應頭如下:

    HTTP/1.0 200 OK

    Set-Cookie: UserID=itbilu; Max-Age=3600; Version=1

    Content-type: text/html

    ……

3. 再次請求時,客戶端請求中會包含一個Cookie請求頭

客戶端會對服務器響應的Set-Cookie頭信息進行存儲。再次請求時,將會在請求頭中包含服務器響應的Cookie信息。請求頭如下

    GET / HTTP/1.0

    HOST: itbilu.com

    Cookie: UserID=itbilu

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章