C#判断浏览器是否接受Cookies的方法是什么呢?一种确定浏览器是否接受 Cookie 的方法是先编写一个 Cookie,然后再尝试读取这个 Cookie。如果不能读取这个 Cookie,则可以认为该浏览器不接受 Cookie。
成都创新互联公司长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为沙雅企业提供专业的成都网站制作、成都网站设计,沙雅网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。
我编写了一个简单的示例来说明如何测试 Cookie 是否被接受。该示例包含两个页面。在***个页面中,我编写了一个 Cookie,然后把浏览器重新定向到第二个页面。第二个页面尝试读取这个 Cookie,转而将浏览器重新定向到***个页面,并向 URL 添加一个带有测试结果的查询字符串变量。
C#判断浏览器之***个页面的代码如下:
- 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,这样就能在执行测试后把重定向到该页面。
C#判断浏览器之测试页面可以完全由代码组成,不需要包含控件。以下就是使用的代码:
- 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);
- }
C#判断浏览器的基本操作内容就向你介绍到这里,希望对你了解和学习C#判断浏览器有所帮助。
文章名称:C#判断浏览器应用实例详解
网站链接:http://www.mswzjz.cn/qtweb/news25/15725.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能