IE10、IE11 ASP.Net 网站无法写入Cookie 问题

在做项目的时候遇上一个奇怪的问题,这个项目是用前端DWZ框架+MVC框架做的,在IE10和IE11上, 用户登录之后,操作界面中的任何操作,都无法操作,抛出异常,经过查找分析发现, 只有在IE10和IE11上请求后台时,cookie丢失,我就郁闷了 ,IE9和其他浏览器都没问题,怎么在IE10 、IE11上就有问题了,最后在一个博客里面看到一篇文章跟我的问题类似,然后就试着操作了下,还真成了。原来是因为IE10\IE11 User-Agent 导致APS.NEt网站无法写入cookie,这个问题已经经过微软官方确认,是IE10的Bug,其实也可以认为是ASP.NET 2.0、3.5、4.0的Bug。具体的问题分析和解决方案,可查看 http://www.cnblogs.com/maoniu602/p/3799958.html 这个,我这是打酱油的,我的解决方案比那个博客上写少做两步,我这里是成的

我的解决方案是:

在网站的根目录,新增一个浏览器定义文件,步骤如下:

1、添加一个"App_Browsers"文件夹 ;

2、添加一个"*.browser"后缀的文件,如 IE10.browser;

3、在文件中添加如下内容(下面的配置表示,对所有的设备和浏览器,都支持Cookies):

<browsers>
     <browser refID="Default">
          <capabilities><!-- To avoid wrong detections of e.g. IE10 -->
             <capability name="cookies" value="true" />
             <capability name="ecmascriptversion" value="3.0" />
          </capabilities>
      </browser>
 </browsers>  

时间: 2024-10-09 17:44:43

IE10、IE11 ASP.Net 网站无法写入Cookie 问题的相关文章

IE10、IE11 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题

你是否遇到过当使用一个涉及到Cookie操作的网站或者管理系统时,IE 6.7.8.9下都跑的好好的,唯独到了IE10.11这些高版本浏览器就不行了?好吧,这个问题码农连续2天内遇到了2次.那么,我们就来看看,这个问题的前因后果. 先说下这2次的使用场景,一次是在某页面中,先存Cookie,然后再入库记录相关数据,但是发布到生产环境后,入库操作没有发生:后来通过打印日志发现问题卡在这里: if (Request.Browser.Cookies) 也就是说,在客户端是IE10的环境下,这里返回Fa

IE10、IE11 User-Agent 网站无法写入Cookie 问题[转]

你是否遇到过当使用一个涉及到Cookie操作的网站或者管理系统时,IE 6.7.8.9下都跑的好好的,唯独到了IE10.11这些高版本浏览器就不行了?好吧,这个问题码农连续2天内遇到了2次.那么,我们就来看看,这个问题的前因后果. 先说下这2次的使用场景,一次是在某页面中,先存Cookie,然后再入库记录相关数据,但是发布到生产环境后,入库操作没有发生:后来通过打印日志发现问题卡在这里: if (Request.Browser.Cookies) 也就是说,在客户端是IE10的环境下,这里返回Fa

浅谈asp.net通过本机cookie仿百度(google)实现搜索input框自动弹出搜索提示

对于通过用户输入关键词实现自动弹出相关搜索结果,这里本人给两种解决方案,用于两种不同的情形. 常见方法是在数据库里建一个用户搜索关系表,然后通过用户搜索框输入的关键字异步调用数据表中的相关数据,显示在一个隐藏div中. 第二种方式也就是我现在着重讨论的方式,适用于单个用户,基于此用户以往的搜索数据来实现搜索提示功能.技术关键是记录下用户的以往搜索数据,写入cookie,然后页面从用户本机cookie调用数据. ok,下面进入正题.本文主要讲实现步骤,代码可根据自己实际需要更改. 一,如何写入co

asp.net网站优化经验之谈

最近公司一个项目上线后,经常崩溃,于是开始重视性能问题,在网上看到了许多相关文章,整理下发了上来.以备参考. 在用ASP.NET开发网站的时候,性能是永远需要考虑和关注的问题,性能不仅仅只是程序代码执行时候的速度,而是涉及到方方面面的东西. 就拿ASP.NET的一个请求来讲,从浏览器向服务器的ASP.NET网站发送请求开始一直到最后整个页面呈现在我们面前,其中请求经过的每一个步骤,都是有不同的调优方式的,而且调用的方法也很多,不仅仅只是常见的:缓存,多线程,异步等. 本系列的文章决定从两个大的方

Asp.net 服务器Application,Session,Cookie,ViewState和Cache区别

系统对象与状态管理  原文   http://www.cnblogs.com/liaoqiang/archive/2010/01/30/1660021.html Page对象Page对象是指向页面自身的方式,在整个页面的执行期内,都可以使用该对象示例: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="defautl.aspx.cs" Inherits="_defaul

如何在IIS6,7中部署ASP.NET网站(转载)

阅读目录 查看web.config文件 在IIS中创建网站 IIS6 添加扩展名映射 IIS6 无扩展名的映射 目录的写入权限 SQL SERVER的配置 在IIS7中部署ASP.NET程序 80端口和域名 查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModules ,这些参数都是网站开发人员认为运行网站所必需的参数. 因此,如果我们想将一个网站部署

ASP.NET跨页面传值——Cookie

ASP.NET跨页面传值 Cookie,这个也是大家常使用的方法,Cookie用于在用户浏览器上存储小块的信息,保存用户的相关信息,比如用户访问某网站时用户的ID,用户的偏好等,用户下次访问就可以通过检索获得以前的信息.所以Cookie也可以在页面间传递值.Cookie通过HTTP头在浏览器和服务器之间来回传递的.Cookie只能包含字符串的值,如果想在Cookie存储整数值,那么需要先转换为字符串的形式. 注意: Cookie与Session一样,都是什对每一个用户而言的,但是有个本质的区别,

asp.net网站防恶意刷新的Cookies与Session解决方法

本文实例讲述了asp.net网站防恶意刷新的Cookies与Session解决方法,是WEB程序设计中非常实用的技巧.分享给大家供大家参考.具体实现方法如下: Session版实现方法: public double time; public const int freetime = 1;//防刷冰冻时间间隔,当前为1秒 #region 防恶意刷新 if (Session.SessionID == null) {   Response.End(); } else if (Session["sion

26种提高ASP.NET网站访问性能的优化方法 .

1. 数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响.系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求. 连接池的大小是有限的,如果在连接池达到最大限度后仍要求创建连接,必然大大影响性能.因此,在建立数据库连接后只有在真正需要操作时才打开连接,使用完