• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP.NET在IE10中无法判断用户已登入及Session丢失问题解决方法
    今天发现在IE10中登录我公司的一个网站时,点击其它菜单,页面总会自动重新退出到登录页,后检查发现,IE10送出的HTTP头,和.AUTH Cookie都没问题,但使用表单验证机制(FormsAuthentication)却无法判断该用户已登入,保存的Session总会丢失.

    后查实这是ASP.NET 2.0,3.5和4.0的Bugs,因这些版本无法识别IE10的User-Agent标头字符串,所以无法识别用户浏览器的版本,从而导至了ASP.NET的特定功能失效,认为游览器不支持Cookies功能,不处理与Cookie相关的程式码等,从而在浏览器中不保存服务器返回的Session标识,造成丢失等.

    这个问题早经微软官方确认,是IE10的一个Bug,也发布了两个HOTFIX专门用来修复这个问题,各位如遇到同样的问题,可参考以下说明:
    KB2600088: Hotfix 适用在 Microsoft.NET Framework 4.0 中的 ASP.NET  [英文]
    KB2608565: Hotfix 适用在 .NET Framework 3.5.1 中的 ASP.NET  [英文]
    KB2600100: Hotfix 适用在 .NET Framework 3.5 SP1 与 .NET Framework 2.0 SP2 中的 ASP.NET  [英文]
    简单的解决方法是,在网站根目录,新增一个浏览器定义文件(browser definition file)

    步骤如下:
    1.添加一个"App_Browsers"文件夹
    2.添加一个"*.browser"后缀的文件,如IE10.browser.
    3.添加文件内容如下:
    复制代码 代码如下:

    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>

    设定完成,问题即可解决
    您可能感兴趣的文章:
    • C# SESSION丢失问题的解决办法
    • Yii框架用户登录session丢失问题解决方法
    • php页面跳转session cookie丢失导致不能登录等问题的解决方法
    • 解决uploadify使用时session发生丢失问题的方法
    • Session 失效的原因汇总及解决丢失办法
    • Windows下Apache + PHP SESSION丢失的解决过程全纪录
    • Session丢失的解决办法小结
    • iis7中session丢失的解决方法小结
    • uploadify在Firefox下丢失session问题的解决方法
    • 解决window.location.href之后session丢失的问题
    上一篇:Farpoint的简单用法简要概述
    下一篇:Image显示服务器上任意绝对路径下的图片(采用二进制流实现)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP.NET在IE10中无法判断用户已登入及Session丢失问题解决方法 ASP.NET,在,IE10,中,无法,判断,