| 導購 | 订阅 | 在线投稿
分享
 
 
 

檢測浏覽器是否接受Cookies(Downmoon)?

來源:互聯網網民  2007-01-29 12:06:53  評論

一種確定浏覽器是否接受 Cookie 的方法是先編寫一個 Cookie,然後再嘗試讀取這個 Cookie。如果不能讀取這個 Cookie,則可以認爲該浏覽器不接受 Cookie。

我編寫了一個簡單的示例來說明如何測試 Cookie 是否被接受。該示例包含兩個頁面。在第一個頁面中,我編寫了一個 Cookie,然後把浏覽器重新定向到第二個頁面。第二個頁面嘗試讀取這個 Cookie,轉而將浏覽器重新定向到第一個頁面,並向 URL 添加一個帶有測試結果的查詢字符串變量。

第一個頁面的代碼如下:

王朝网络
protected System.Web.UI.WebControls.Label labelAcceptsCookies;
王朝网络

王朝网络
private void Page_Load(object sender, System.EventArgs e)
王朝网络
王朝网络
...{
王朝网络

王朝网络
if(!IsPostBack)
王朝网络
王朝网络
...{
王朝网络
WriteCookie();
王朝网络

王朝网络
}
王朝网络
}
王朝网络

王朝网络
private void WriteCookie()
王朝网络
王朝网络
...{
王朝网络
if( Request.QueryString["AcceptsCookies"] ==null)
王朝网络
王朝网络
...{
王朝网络
Response.Cookies["TestCookie"].Value = "ok";
王朝网络
Response.Cookies["TestCookie"].Expires = DateTime.Now.AddMinutes(1);
王朝网络
Response.Redirect("CookieRead.aspx?redirect="+Server.UrlEncode(Request.Url.ToString()));
王朝网络
}
王朝网络
else
王朝网络
王朝网络
...{
王朝网络
labelAcceptsCookies.Text = "接受 Cookie = "+Request.QueryString["AcceptsCookies"];
王朝网络
}
王朝网络
}

第一個頁面測試是否有回信,如果沒有,就搜索包含測試結果的查詢字符串變量 (AcceptsCookies)。如果沒有找到查詢字符串變量,則表示測試還沒有完成,代碼就寫出一個名爲“TestCookie”的 Cookie。寫出 Cookie 之後,示例調用 Response.Redirect 來切換到測試頁面 (TestForCookies.aspx)。附加到測試頁面的 URL 的是名爲 redirect 的查詢字符串變量,該變量中包含了當前頁面的 URL,這樣就能在執行測試後把重定向到該頁面。

測試頁面可以完全由代碼組成,不需要包含控件。以下就是使用的代碼:

王朝网络
private void Page_Load(object sender, System.EventArgs e)
王朝网络
王朝网络
...{
王朝网络
ReadCookie();
王朝网络
}
王朝网络
private void ReadCookie()
王朝网络
王朝网络
...{
王朝网络
String redirect = Request.QueryString["redirect"];
王朝网络
String acceptsCookies ;
王朝网络
// 是否接受 Cookie?
王朝网络
if(Request.Cookies["TestCookie"] ==null)
王朝网络
// 沒有 Cookie,因此不需要接受
王朝网络
acceptsCookies = "0";
王朝网络
else
王朝网络
王朝网络
...{
王朝网络
acceptsCookies = "1";
王朝网络
//刪除測試 Cookie
王朝网络
Response.Cookies["TestCookie"].Expires = DateTime.Now.AddDays(-1);
王朝网络
}
王朝网络
Response.Redirect(redirect + "?AcceptsCookies=" +acceptsCookies, true);
王朝网络
}

 
特别声明:以上内容(如有图片或视频亦包括在内)为网络用户发布,本站仅提供信息存储服务。
 
一種確定浏覽器是否接受 Cookie 的方法是先編寫一個 Cookie,然後再嘗試讀取這個 Cookie。如果不能讀取這個 Cookie,則可以認爲該浏覽器不接受 Cookie。 我編寫了一個簡單的示例來說明如何測試 Cookie 是否被接受。該示例包含兩個頁面。在第一個頁面中,我編寫了一個 Cookie,然後把浏覽器重新定向到第二個頁面。第二個頁面嘗試讀取這個 Cookie,轉而將浏覽器重新定向到第一個頁面,並向 URL 添加一個帶有測試結果的查詢字符串變量。 第一個頁面的代碼如下: [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043609984.png[/img][/url]protected System.Web.UI.WebControls.Label labelAcceptsCookies; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610171.png[/img][/url] [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610421.png[/img][/url] private void Page_Load(object sender, System.EventArgs e) [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610515.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610578.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610640.png[/img][/url] [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610703.png[/img][/url] if(!IsPostBack) [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610765.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610843.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610921.png[/img][/url] WriteCookie(); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043610968.png[/img][/url] [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611031.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611093.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611156.png[/img][/url] [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611218.png[/img][/url] private void WriteCookie() [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611281.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611343.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611406.png[/img][/url] if( Request.QueryString["AcceptsCookies"] ==null) [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611468.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611546.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611609.png[/img][/url] Response.Cookies["TestCookie"].Value = "ok"; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611671.png[/img][/url] Response.Cookies["TestCookie"].Expires = DateTime.Now.AddMinutes(1); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611734.png[/img][/url] Response.Redirect("CookieRead.aspx?redirect="+Server.UrlEncode(Request.Url.ToString())); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611796.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611859.png[/img][/url] else [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043611953.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612015.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612078.png[/img][/url] labelAcceptsCookies.Text = "接受 Cookie = "+Request.QueryString["AcceptsCookies"]; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612140.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612218.png[/img][/url] } 第一個頁面測試是否有回信,如果沒有,就搜索包含測試結果的查詢字符串變量 (AcceptsCookies)。如果沒有找到查詢字符串變量,則表示測試還沒有完成,代碼就寫出一個名爲“TestCookie”的 Cookie。寫出 Cookie 之後,示例調用 Response.Redirect 來切換到測試頁面 (TestForCookies.aspx)。附加到測試頁面的 URL 的是名爲 redirect 的查詢字符串變量,該變量中包含了當前頁面的 URL,這樣就能在執行測試後把重定向到該頁面。 測試頁面可以完全由代碼組成,不需要包含控件。以下就是使用的代碼: [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612281.png[/img][/url]private void Page_Load(object sender, System.EventArgs e) [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612343.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612421.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612703.png[/img][/url] ReadCookie(); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612765.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612828.png[/img][/url] private void ReadCookie() [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612906.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043612968.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613046.png[/img][/url] String redirect = Request.QueryString["redirect"]; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613109.png[/img][/url] String acceptsCookies ; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613171.png[/img][/url] // 是否接受 Cookie? [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613250.png[/img][/url] if(Request.Cookies["TestCookie"] ==null) [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613312.png[/img][/url] // 沒有 Cookie,因此不需要接受 [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613375.png[/img][/url] acceptsCookies = "0"; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613437.png[/img][/url] else [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613500.png[/img][/url][url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613562.png[/img][/url] ...{ [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613625.png[/img][/url] acceptsCookies = "1"; [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613687.png[/img][/url] //刪除測試 Cookie [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613750.png[/img][/url] Response.Cookies["TestCookie"].Expires = DateTime.Now.AddDays(-1); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613812.png[/img][/url] } [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613890.png[/img][/url] Response.Redirect(redirect + "?AcceptsCookies=" +acceptsCookies, true); [url=/bbs/detail_836502.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/1170043613953.png[/img][/url]}
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有