广

ASP编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    IIS压缩导致的Ajax问题

    2018-04-06 10:41:31 次阅读 稿源:互联网
    零七广告

      最近在自己的电脑上测试发现,以前在各种环境下都运行正常的两款软件(asp.net开发的B/S结构软件),出现了莫名其妙的脚本错误,错误发生在通过右键菜单在系统中添加目录或用户的时候,估计是收到Ajax响应并进行处理时发生了问题。通过借助Httpwatch等工具调试发现,进行Ajax处理的服务器端页面运行正常,但客户端收到的Ajax响应内容却与服务端发送的内容不符,具体现象是响应字符串xmlHttp.responseText在客户端被截断了后面的一部分。

      首先想到的是浏览器的兼容性问题、Ajax请求和响应的编码问题,但后来都逐一排除了。以关键字“xmlHttp.responseText 被截断”进行搜索,发现有不少人都遇到过这种现象,但都没有找到答案,无果而终,费了几个小时时间也没有任何进展。

      下班后清醒了一下头脑,终于怀疑到了IIS方面,最先被怀疑的就是IIS压缩(这次没有走弯路了),打开IIS管理界面,取消默认网站的IIS压缩选项,但调试时又出现了配置错误,原来这种IIS设置的修改,它是以web.config文件的形式保存在网站根目录下的。删除这个文件后,直接到IIS的顶级设置中取消相关的压缩选项,再打开页面测试,发现问题已经没有了,一切正常。

      看来,是IIS的压缩功能导致了输出的响应内容被截断了,至于为什么会出现这种问题,还没有去研究,希望有识之士补充一二。

      如果需要再现问题现象,可到http://ldsoft.cc下载“工作任务管理系统”这款软件来安装,并进入用户管理界面进行添加用户操作。

      附测试环境:Windows 7操作系统(IIS 7.5),IE 8.0浏览器,Asp.net 1.1程序运行环境,使用原始的XMLHttpRequest 对象方式来进行Ajax处理。

      作者博客:http://www.cnblogs.com/cunet/

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告