C# 检查客户端Cookie是否启用

发现 System.Web.HttpBrowserCapabilities 类有个属性 Cookies,以为这个属性是侦查目标浏览器是否启用了Cookie的,结果一试才知道根本不是那么回事。上网搜索了一下,发现犯这个错误的人竟不在少数。无奈,既然没有现成的方法可用,那就自己写吧。思路很简单,试图写入一个Cookie,如果不成功就认为客户端禁用了Cookie。代码很简单,如下:

public   partial   class  Login : System.Web.UI.Page {

  
private   const   string  COOKIE_TEST_KEY  =   " tce_84kfi50c " ;

  
protected   void  Page_Load( object  sender, EventArgs e) {
    
if  ( ! IsPostBack) { 
      
//  写入一个Cookie,以测试浏览器是否支持
      Utility.WebUtility.WriteToCookie(COOKIE_TEST_KEY,  " True " );
    }
  }

  
protected   void  btnLogin_Click( object  sender, EventArgs e) {
    
//  用户单击“登录”按钮时检查Cookie是否可用
     if  ( string .IsNullOrEmpty(Utility.WebUtility.GetCookie(COOKIE_TEST_KEY))) {
      
//  已确定Cookie被禁用,跳转到通知页面
      Core.Url.Location.RedirectTo(Core.Url.Dialogs.CookieDisabled,  null );
    }
  }

}


 

转载于:https://www.cnblogs.com/wfyfngu/archive/2010/01/12/1645039.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值