• <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 厚積薄發 閱讀(361) 評論(0)  編輯 收藏 引用 所屬分類: Web

            導航

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統計

            常用鏈接

            留言簿

            隨筆分類

            文章分類

            文章檔案

            搜索

            最新評論

            久久国产乱子伦精品免费午夜| 亚洲人AV永久一区二区三区久久| 久久国产精品77777| 久久精品视频免费| 一本久久a久久精品综合香蕉| 国产亚洲精久久久久久无码77777| 久久国产色AV免费观看| 精品水蜜桃久久久久久久| 久久精品国产99国产精品导航| 精品久久久久久中文字幕| 久久午夜免费视频| 久久99毛片免费观看不卡| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 欧美久久精品一级c片片| 久久人人爽人人精品视频| 成人国内精品久久久久一区| 亚洲人AV永久一区二区三区久久| 久久中文字幕一区二区| 久久国产色AV免费观看| 久久久无码精品亚洲日韩蜜臀浪潮| 热99re久久国超精品首页| 久久九九久精品国产免费直播| 办公室久久精品| 久久亚洲综合色一区二区三区| 国产精品久久久久国产A级| 久久久亚洲AV波多野结衣| 青青草原综合久久大伊人| 欧美午夜A∨大片久久| 久久国产精品视频| 久久国产三级无码一区二区| 情人伊人久久综合亚洲| 一级做a爰片久久毛片16| 亚洲国产精品久久久久婷婷软件 | 国产精品久久久久久福利漫画 | 亚洲欧美日韩精品久久亚洲区 | 91精品国产91久久久久久蜜臀| 国内精品人妻无码久久久影院| 久久精品国产亚洲av水果派| 亚洲va国产va天堂va久久| 久久久精品人妻一区二区三区蜜桃 | 国产精品久久久久久久久久影院|