★→ASP程序學習群:62655404 微信公眾號開發

ASP.NET中Cookie編程的基礎知識

中國IT實驗室 2008/4/26 22:54:58 深山行者 字體:  瀏覽 17172 我要評論
當前標簽
asp.netCookie

【完整足球指数】欧赔 www.urvgw.com 簡介

Cookie 為 Web 應用程序保存用戶相關信息提供了一種有用的方法。例如,當用戶訪問您的站點時,您可以利用 Cookie 保存用戶首選項或其他信息,這樣,當用戶下次再訪問您的站點時,應用程序就可以檢索以前保存的信息。

什么是 Cookie?

Cookie 是一小段文本信息,伴隨著用戶請求和頁面在 Web 服務器和瀏覽器之間傳遞。用戶每次訪問站點時,Web 應用程序都可以讀取 Cookie 包含的信息。

假設在用戶請求訪問您的網站 www.contoso.com 上的某個頁面時,您的應用程序發送給該用戶的不僅僅是一個頁面,還有一個包含日期和時間的 Cookie.用戶的瀏覽器在獲得頁面的同時還得到了這個 Cookie,并且將它保存在用戶硬盤上的某個文件夾中。

以后,如果該用戶再次訪問您站點上的頁面,當該用戶輸入 URL www.contoso.com 時,瀏覽器就會在本地硬盤上查找與該 URL 相關聯的 Cookie.如果該 Cookie 存在,瀏覽器就將它與頁面請求一起發送到您的站點,您的應用程序就能確定該用戶上一次訪問站點的日期和時間。您可以根據這些信息向用戶發送一條消息,也可以檢查過期時間或執行其他有用的功能。

Cookie 是與 Web 站點而不是與具體頁面關聯的,所以無論用戶請求瀏覽站點中的哪個頁面,瀏覽器和服務器都將交換 www.contoso.com 的 Cookie 信息。用戶訪問其他站點時,每個站點都可能會向用戶瀏覽器發送一個 Cookie,而瀏覽器會將所有這些Cookie 分別保存。

以上就是 Cookie 的基本工作原理。那么,Cookie 有哪些用途呢?最根本的用途是 Cookie 能夠幫助 Web 站點保存有關訪問者的信息。更概括地說,Cookie 是一種保持 Web 應用程序連續性(即執行“狀態管理”)的方法。瀏覽器和 Web 服務器除了在短暫的實際信息交換階段以外總是斷開的,而用戶向 Web 服務器發送的每個請求都是單獨處理的,與其他所有請求無關。然而在大多數情況下,都有必要讓 Web 服務器在您請求某個頁面時對您進行識別。例如,購物站點上的 Web 服務器跟蹤每個購物者,以便站點能夠管理購物車和其他的用戶相關信息。因此 Cookie 的作用就類似于名片,它提供了相關的標識信息,可以幫助應用程序確定如何繼續執行。

使用 Cookie 能夠達到多種目的,所有這些目的都是為了使 Web 站點記住您。例如,一個實施民意測驗的站點可以簡單地利用 Cookie 作為布爾值,表示您的瀏覽器是否已經參與了投票,從而避免您重復投票; 而那些要求用戶登錄的站點則可以通過Cookie 來確定您是否已經登錄過,這樣您就不必每次都輸入憑據。

有關 Cookie 的更多背景信息,建議您閱讀 Verizon Web 站點中的“How Internet Cookies Work”一文,地址為//www22.verizon.com/about/community/learningcenter/articles/displayartic le1/0,4065,1022z1,00.html(英文)。其作者詳細解釋了什么是 Cookie 以及Cookie 是如何在瀏覽器和服務器之間交換信息的,他還全面總結了 Cookie 涉及的隱私問題。

順便問一下,您是否想知道它們為什么被稱作“Cookie”?Jargon File(又稱為“The New Hacker's Dictionary”)版本 4.3.3 對這一術語的詞源給出了準確的定義和合理的解釋。您可以在 //www.catb.org/~esr/jargon/jargon.html#cookie(英文)找到相關的條目。

在此后的內容中,本文將假設您已經知道什么是 Cookie,并且假設您已經清楚為什么要在 ASP.NET 應用程序中使用 Cookie.

Cookie 的限制

在開始討論 Cookie 的技術細節之前,我想先介紹一下 Cookie 應用的幾條限制。大多數瀏覽器支持最多可達 4096 字節的 Cookie,如果要將為數不多的幾個值保存到用戶計算機上,這一空間已經足夠大,但您不能用一個 Cookie 來保存數據集或其他大量數據。在實際應用中,您可能并不希望在 Cookie 中保存大量的用戶信息,而只希望保存用戶編號或其他標識符。之后,當用戶再次訪問您的站點時,您就可以使用該用戶ID 在數據庫中查找用戶的詳細信息。(有關保存用戶信息的說明,請參閱 Cookie 和安全性。)

瀏覽器還限制了您的站點可以在用戶計算機上保存的 Cookie 數。大多數瀏覽器只允許每個站點保存 20 個 Cookie.如果試圖保存更多的 Cookie,則最先保存的Cookie 就會被刪除?;褂行╀榔骰岫岳醋運姓鏡愕?Cookie 總數作出限制,這個限制通常為 300 個。

您最可能遇到的 Cookie 限制是:用戶可以設置自己的瀏覽器,拒絕接受Cookie.您很難解決這個問題,除非完全不使用 Cookie 而是通過其他機制來保存用戶相關信息。保存用戶信息的一種常用方法是會話狀態,但會話狀態又依賴于 Cookie.這一點在后面的 Cookie 和會話狀態中闡述。

后一頁:沒有了
相關閱讀
( 2019/4/15 22:32:46 )asp中qequest讀取優先級順序(通過優化之后提高速度)
( 2018/4/16 10:27:32 )asp中Request.ServerVariables能獲取的信息整理總結
( 2013/5/7 10:11:47 )生成隨機字符串的函數
( 2009/12/22 14:07:40 )告訴你一些GOOGLE搜索你不知道的東西
( 2009/9/4 8:31:08 )超級實用且不花哨的js代碼大全( 7 )
( 2009/9/4 8:25:26 )超級實用且不花哨的js代碼大全( 3 )
( 2009/9/4 8:22:09 )超級實用且不花哨的js代碼大全( 1 )
( 2009/8/31 15:43:13 )HTML文檔中meta標簽的作用
共有0條關于《ASP.NET中Cookie編程的基礎知識》的評論
發表評論
正在加載評論……
返回頂部發表評論
呢 稱:
表 情:
內 容:
評論內容:不能超過 1000 字,需審核,請自覺遵守互聯網相關政策法規。
驗證碼: 驗證碼 
深山工作室網友評論聲明,請自覺遵守互聯網相關政策法規。

您發布的評論即表示同意遵守以下條款:
一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權益;
二、不得發布國家法律、法規明令禁止的內容;互相尊重,對自己在本站的言論和行為負責;
三、本站對您所發布內容擁有處置權。

更多信息>>欄目類別選擇
rss學習
個人空間
網站設計
網站公告
下載
photoshop學習
ASP學習
DIV+CSS學習
SEO搜索引擎憂化
java學習
HTML學習
網站信息
網站類信息
更多>>同類信息
ASP.NET 2.0跨網頁提交的三法
ASP.NET 2和IIS 7.0發生不兼容變化
ASP.NET中文亂碼問題的解決。
ASP.Net 2.0中的5個數據控件
根據頁面模板動態生成html頁面
ASP.NET AJAX的應用
Asp.net中防止用戶多次登錄的方法
ASP.Net利用CSS實現多界面的方法
更多>>最新添加文章
純asp根據當前日期計算出相應的星座
純asp根據當前日期計算出當前年份的屬相
sql server中前綴為PK、UK、DF、CK、FK表的意思
網站從http改成https(ssl證書)后設置301跳轉將http跳轉到https的方法
ASP利用fso讀取文件夾里所有文件的名字
jquery動態生成的html代碼中無法使用jquery事件的解決方法
asp實現獲得當前文章的上一篇信息與下一篇信息功能及代碼
asp導出內容到excel表并自定義命名后下載(非打開)
更多>>隨機抽取信息
CSS關于box(盒模式)的一系列問題詳解
JS自動獲取TAGS關鍵詞
在DIV+CSS里面IE5.5的專用標簽
購物網上圖片放大效果
返回上一頁頁面特效
告訴你一些GOOGLE搜索你不知道的東西
極酷的,漂亮的頁面loading等待頁面特效
12個定律原則