創建壹個系統。HttpWebRequest的HttpWebRequest.cookie容器屬性的。
C#
動詞
請求。CookieContainer = new CookieContainer();
2.使用CookieContainer。Add方法將Cookie對象添加到HttpWebRequest.CookieContainer。
C#
動詞
請求。CookieContainer.Add(新Uri(" "),新Cookie("id "," 1234 "));
3.獲取響應消息上的Cookie。
創建壹個系統。Net.CookieContainer在請求上保存發送給響應的Cookie對象。即使沒有發送Cookie,也必須執行此操作。
C#
動詞
請求。CookieContainer = new CookieContainer();
4.檢索HttpWebResponse中的值。httpwebresponse的cookies屬性。在此示例中,Cookie將被檢索並保存在獨立存儲中。
C#
動詞
private void read callback(IAsyncResult asynchronous result){ http webrequest request =(http webrequest)asynchronous result。異步狀態;HttpWebResponse響應= (HttpWebResponse)請求。end getresponse(asynchronous result);使用(IsolatedStorageFile ISF = IsolatedStorageFile。GetUserStoreForSite()){ using(IsolatedStorageFileStream isfs = ISF。OpenFile("CookieExCookies ",FileMode。OpenOrCreate,FileAccess。write)){ using(StreamWriter SW = new StreamWriter(isfs)){ foreach(Cookie cookieValue in response。cookie){ SW。WriteLine(" Cookie:"+cookieValue。ToString());} sw。close();} } } }
例子
以下示例顯示了如何創建Web請求並將Cookie添加到請求中。此示例還演示了如何從Web響應中提取cookie,將cookie寫入獨立存儲中的文件,以及從獨立存儲中讀取cookie。當您運行此示例時,系統。Net.Cookie值顯示在TextBlock控件中。
運行此示例
C#
動詞
使用系統;使用系統。集合。泛型;使用系統。Linq使用System.Net;使用系統。Windows使用系統。Windows . Controls使用系統。Windows .文檔;使用系統。窗口。輸入;使用系統。Windows . Media使用系統。Windows . Media.Animation使用系統。窗口。形狀;使用系統。Net . Browser使用系統。木衛壹;使用系統。文本;使用系統。IO .隔離存儲;命名空間cookies ex { public partial class main page:user control { public main page(){ initialize component();} private void button 1 _ Click(object sender,routed eventargs e){ InitializeWebRequestClientStackForURI();readfromsisolatedstorage();} private void InitializeWebRequestClientStackForURI(){//創建客戶端WebRequest創建者。IWebRequestCreate creator = WebRequestCreator。ClientHttp//Register both/clientaccesspolicy . XML ");//創建cookie容器並添加壹個cookie。請求。CookieContainer = new CookieContainer();//此示例顯示手動添加cookie,但您最有可能//從獨立存儲中讀取cookie。請求。CookieContainer.Add(新Uri(" "),新Cookie("id "," 1234 "));//發送請求。請求。BeginGetResponse(new async callback(read callback),請求);} //獲取響應並將cookies寫入獨立存儲。private void read callback(IAsyncResult asynchronous result){ http webrequest request =(http webrequest)asynchronous result。異步狀態;HttpWebResponse響應= (HttpWebResponse)請求。end getresponse(asynchronous result);使用(IsolatedStorageFile ISF = IsolatedStorageFile。GetUserStoreForSite()){ using(IsolatedStorageFileStream isfs = ISF。OpenFile("CookieExCookies ",FileMode。OpenOrCreate,FileAccess。write)){ using(StreamWriter SW = new StreamWriter(isfs)){ foreach(Cookie cookieValue in response。cookie){ SW。WriteLine(" Cookie:"+cookieValue。ToString());} sw。close();} } } } private void readfromsisolatedstorage(){ using(IsolatedStorageFile ISF = IsolatedStorageFile。GetUserStoreForSite()){ using(IsolatedStorageFileStream isfs = ISF。OpenFile("CookieExCookies ",FileMode。open)){ using(StreamReader Sr = new StreamReader(isfs)){ TB 1。text = Sr . ReadToEnd();Sr . Close();} } } } } }