[英]IE6 AJAX Response Data Issue
我一直在寻找,我找不到任何解决此问题的方法。
IE6仅对AJAX调用的响应有问题,并且由于无效数据而出错(更改数据显示单个美丽的怪异方块)
IE6在本地运行良好(相同的页面和相同的数据),我检查并重新检查了它在服务器上与此处的调用正确的URL,并且没有跨域或类似的东西。 它实际上也可以使通话正常并得到响应(“正常”状态)
通过地址栏在IE6中的实时服务器上调用AJAX url效果很好,并且也显示了所有数据。
我尝试过强制内容类型和字符集,我尝试过关闭web.config中的压缩功能,但它仍然无效...而我的时间已不多了:(
FF3.5,IE7,IE8在本地和服务器上都可以完美运行。 服务器是Windows 2008(Rackspace Cloud),本地服务器只是Web Dev Express 2008的内置开发服务器
它的一个MVC C#应用程序。任何想法将不胜感激!
编辑:
我可以粘贴很多,但好的,控制器:
public ActionResult TEST()
{
return Content("HI THERE!", "text/plain");
}
当然是从text / html开始的。
javascript是一个简单的ajaxURL函数,可加载XMLHttpRequest或MSXML2.XMLHTTP或Microsoft.XMLHTTP。 在就绪状态更改时,如果readyState == 4,则警告结果及其正方形(除非您直接将URL加载到浏览器中)
同样,整个站点在所有其他浏览器中都可以正常加载,因此我认为它甚至是服务器/配置问题,甚至IE6都可以在本地工作。 我已经完全引用了ajax URL,以防万一(使用代码获取主机,检查非默认端口并将其添加为本地主机等)
查看源代码对ajaxURL的所有调用都是完美的……我可能会尝试使用除UTF-8之外的其他编码选项,并检查更多的压缩选项。
当然,我不是唯一遇到过这种情况的人吗? 嘿嘿
找到了问题,放在这里以防其他人需要信息:)
内容编码:gzip
这正在杀死我的IE6 ajax调用,我只需要在主机上将其关闭即可。 它还说明了为什么它在本地工作而不返回垃圾,因为gzip不在本地设置。
现在,我必须找出为什么web.config HttpCompression设置不会影响被压缩的原因
编辑:
<urlCompression doDynamicCompression="false" doStaticCompression="false"></urlCompression>
做到了,IE6 ajax再次很好地在服务器端工作,现在2:30 am我可以睡觉了! :d
任何与IE6和responseText有类似问题的人,其中responseText是一个看起来很奇怪的方形字符……这是同样的问题! 经过数小时的搜索,才发现这一点。
解决方案是发送不带内容编码的回复。 例如,在PHP中,使用以下标头:header('Content-Encoding:none');
感谢白龙终于为我解决了这个问题。
我一直遇到同样的问题,发现这些问题仅在IETester中使用IE6时才存在。 在单独的工作站IE6-XP-SP2上进行测试时,AJAX响应很好。
我也遇到同样的问题。 但是我尝试了White Dragon's,它不起作用! 而且我发现ajax多次的数据是相同的,所以我认为这与请求缓存有关。 我将其设置为不缓存,然后解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.