• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            yehao's Blog

            關于Cookie

            關于Cookie的思考

            Cookie是什么?
            Cookie產生的背景是源于年代并不久遠但是卻很經典的HTTP協議在互聯網上的急速發展。互聯網之所以成功很大程度上取決于傳輸協議HTTP協議的兩大特性:
            1、 簡單。這個沒什么可多說的。簡單就是美,復雜的東西總是難以流行,想想古語所說陽春白雪和下里巴人就明白了。
            2、 無狀態。無狀態意味著服務器可以滿足更多次的請求,這在成天嚷著要帶寬的互聯網發展初期是確保www成功的重要特性。
            但是到了互聯網的深層次發展,帶寬等限制不存在了,人們需要更復雜的互聯網交互活動,就必須同服務器保持活動狀態。于是,在瀏覽器大發展初期,適應人民群眾的需求,技術上推出了各種保持web瀏覽狀態的手段,其中就包括了Cookie技術。
            總體上,按照狀態保持存儲信息的主要位置來講,狀態保持分為:
            1、 服務器端存儲狀態數據。如通常意義上的session
            2、 客戶端保持存儲,cookie技術和web頁隱藏字段以及URL串存儲。都是主要數據存儲在客戶端或者發往客戶端的信息流中(HTML流),每一次客戶匯報存儲的數據提交給服務器,讓服務器知道自己上一次訪問服務器時候的狀態。
            3、 第三地存儲。例如數據庫存儲會話數據,基本上是1的變種

            cookie的存儲和傳輸
            關于cookie的規范可以查找:
            http://www.w3.org/Protocols/rfc2109/rfc2109.txt
            cookie實際上是一段經過了編碼的字符串,具體來講存儲cookie的實際過程是以 key=value的形式存儲的,而且一個cookie為一個連續的字符串,每一個key之間“;”分隔,cookie之間則以#分割。
            在Http的header中,cookie被傳輸,按照如下的格式:
               set-cookie      =       "Set-Cookie:" cookies
               cookies         =       1#cookie
               cookie          =       NAME "=" VALUE *(";" cookie-av)
               NAME            =       attr
               VALUE           =       value
               cookie-av       =       "Comment" "=" value
                               |       "Domain" "=" value
                               |       "Max-Age" "=" value
                               |       "Path" "=" value
                               |       "Secure"
                               |       "Version" "=" 1*DIGIT
            Cookie是同站點密切相關的,也就說,你的站點發放的Cookie是不會通過IE/NE等發送給其他的站點。這些瀏覽器是通過web站點來區分的。具體的是host來區分的。但是如果你指定了domain的屬性,情況就不同了。那么只有指定domain的站點以及子站點(下級域名,注意還是域名)可以看到此cookie.
            通常在IE中,Cookie是存放在IE進程的共享內存的。也就說,只要是統一進程的IE窗口,同一站點的cookie是共享的。

            Cookie的消滅
            直接給cookie賦””值是錯誤的,應當指示cookie的Max_age(ie是exprise)為一個過去值。譬如1980-1-1,這樣,瀏覽器發現了這樣的Cookie后就不會保存在內存中(更不會在輔存)這樣才算清掉了cookie。我今天就遇到了這樣的情形:
             我在服務器端設置失效期限為當前時間(那么理論上當語句執行完畢cookie就已經過期了),但是發送回客戶端后,并沒有(客戶端時間之后服務期時間)。客戶瀏覽器會認為這個cookie還有效而繼續保持,在下一次提交時刻仍然提交到服務器,造成了邏輯處理上誤解。

            引用一篇關于asp.net的cookie的技術文章
             http://www.microsoft.com/china/msdn/library/webservices/asp.net/asppcookieless.mspx

            posted on 2012-09-22 21:58 厚積薄發 閱讀(345) 評論(0)  編輯 收藏 引用 所屬分類: Web

            導航

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            統計

            常用鏈接

            留言簿

            隨筆分類

            文章分類

            文章檔案

            搜索

            最新評論

            日本精品久久久久中文字幕| 久久亚洲高清观看| 久久国产精品波多野结衣AV | 欧美精品乱码99久久蜜桃| 久久精品一区二区三区AV| 热久久视久久精品18| 欧美精品丝袜久久久中文字幕 | 亚洲国产精品无码久久青草| 久久国产精品99精品国产| 久久久久人妻一区二区三区| 久久久久国产精品嫩草影院| 99热精品久久只有精品| 99久久亚洲综合精品网站| 亚洲国产精品久久久久久| 99久久精品国产一区二区蜜芽| 久久婷婷国产麻豆91天堂| 一级女性全黄久久生活片免费 | 无码超乳爆乳中文字幕久久| 超级97碰碰碰碰久久久久最新| 久久精品一区二区三区AV| 色欲综合久久躁天天躁蜜桃| 久久综合给合久久国产免费| 99久久无码一区人妻a黑| 97久久香蕉国产线看观看| 久久香蕉综合色一综合色88| 国产精品久久久99| 亚洲精品97久久中文字幕无码| 亚洲午夜久久久久久噜噜噜| 人妻无码久久一区二区三区免费| 久久久久99精品成人片直播| 精品久久香蕉国产线看观看亚洲| 久久夜色精品国产亚洲| 日本精品久久久久中文字幕8 | 久久一区二区三区免费| 亚洲午夜久久久久妓女影院| 国产成人久久AV免费| 久久激情五月丁香伊人| 亚洲精品国产第一综合99久久| 久久99精品久久久久久| 国产女人aaa级久久久级| 久久久久久久久久久精品尤物 |