C 中的cookie程式設計

2021-03-31 08:56:29 字數 2573 閱讀 9985

微軟公司視窗2000伺服器版

.*** framework sdk beta 2

c#進行cookie方面程式設計是通過asp.***頁面來實現的。

二、c#如何寫入cookie:

為了寫入cookie,他的步驟主要有三步,具體如下:

首先就要建立乙個httpcookie物件,通過這個物件來構造乙個cookie,這個物件的名稱就是以後產生的cookie名稱。具體如下**:

httpcookie cookie = new httpcookie ( " 使用者定義的cookie名稱" ) ;

然後對建立的httpcookie物件的" value" 屬性分配乙個字串值," value" 的值就是後來產生的cookie的值。具體**如下:

cookie.value = "使用者給cookie賦值" ; 如果你想寫入的cookie數值不是乙個簡單的字串,而是乙個複雜的資料型別,我們知道這些資料型別是不能直接存貯到cookie中的,因為cookie中只能存貯字串。但你可以通過乙個變通的方法,就是把這個複雜的資料型別轉換成多個字串,然後把這多個字串同時賦值給產生的cookie值,這樣cookie中的內容就豐富了,以後利用cookie完成的功能也強大了。這時你可能就會明白為什麼當你瀏覽web伺服器,web伺服器會知道你什麼時候曾經瀏覽過,並且曾經待過多長時間等資訊了。因為這些資訊已經儲存到你第一次瀏覽頁面時,web伺服器產生的cookie中去了。下列**是把多個字串儲存到cookie的例子:

cookie [ " 姓名" ] = " 王天";

cookie [ " 性別" ] = " 男";

cookie [ " 年齡" ] = " 26";

cookie有臨時的,也有永遠的。永久 cookie 以檔案形式儲存在計算機上,關閉 inter*** explorer 時仍然保留在計算機上。再次訪問該站點時,建立該 cookie 的**可以讀取。在具體的程式設計時候,是在寫入此cookie的時候,設定cookie的生命週期,具體如下**:

datetime dtnow = datetime . now ;

timespan t**inute = new timespan ( 0 , 1 , 0 , 0 ) ;

cookie . expires = dtnow + t**inute ;

以上**是設定產生的cookie的生命期為" 乙個小時" ,你可以通過修改" timespan" 屬性來設定產生cookie的具體生命期。

.最後呼叫" response.cookies" 物件的" add()" 方法,加入此物件,這樣就可以產生乙個cookie了。具體**如下:

response . cookies . add ( cookie ) ;

下列**就是在 c#寫入cookie的完整**(write.aspx):

<% @ language = "c#" %>

void writeclicked ( object sender , eventargs e )

在 c#頁面中建立cookie

此cookie的生命週期定義為乙個小時

cookie名稱:

cookie的值:

下圖是上面**執行後的介面:

圖01:c#寫入cookie的程式執行介面

當然上面的**產生的cookie在內容上面有點單調了。其實對於內容十分豐富的cookie來說,他還有許多屬性,充分的利用這些屬性,才可以利用了cookie的強大功能。下表是cookie的一些常用的屬性:

屬性 描述

domain 設定/獲得cookie應屬於的網域名稱。一旦設定了此屬性,則只限定於此網域名稱的web伺服器訪問此cookie。可以設定為"ccw.***.**"

path 設定/獲得cookie應屬於的路徑,如果設定後,則訪問此cookie的web頁面則被限定在此路徑裡面。其他路徑的web頁面則不能訪問。

secure 設定/獲得乙個標識來表明利用http協議是否能夠安全的傳輸cookie到客戶端的瀏覽器。

haskeys 表明是否此cookie是否是多個字串組成的。

在寫入cookie的時候,最大限度的利用這些屬性,對於最大程度的利用寫入的cookie是十分重要的。

三、c#是如何讀取已產生的cookie:

讀取指定的cookie比起寫入cookie要來的容易的多了,只需要使用" request.cookies" 物件就可以完成。下面是讀取指定cookie名稱的方法:

httpcookie cookie = request.cookies [ " cookie的名稱" ] ;

下面是顯示已經讀取了的cookie的數值:

response.write (cookie . value . tostring ( ) ) ; 掌握了上面的要點,讀取cookie就顯得非常容易了,下列是讀取cookie的程式**(read.aspx): <% @ language = "c#" %>

void readclicked ( object sender , eventargs e )

else

}在 c#頁面中讀取指定cookie值

請輸入要讀取的cookie名稱:

下圖是上面**執行後的介面:

圖02:讀取指定cookie的值的程式執行介面

四、總結:

C 中的cookie程式設計

微軟公司視窗2000伺服器版 net framework sdk beta 2 c 進行cookie方面程式設計是通過asp.net頁面來實現的。二 c 如何寫入cookie 為了寫入cookie,他的步驟主要有三步,具體如下 首先就要建立乙個httpcookie物件,通過這個物件來構造乙個cook...

C 中的cookie程式設計

原始檔 http www.chinaaspx.com archive dotnet 16394.htm 一 本文介紹的程式設計和執行的軟體環境 微軟公司視窗2000伺服器版 net framework sdk beta 2 c 進行cookie方面程式設計是通過asp.net頁面來實現的。二 c 如...

C 中的cookie程式設計

c 中的cookie程式設計 微軟公司視窗2000伺服器版 net framework sdk beta 2 c 進行cookie方面程式設計是通過asp.net頁面來實現的。二 c 如何寫入cookie 為了寫入cookie,他的步驟主要有三步,具體如下 首先就要建立乙個httpcookie物件,...