2014-03-13 207 views
4

IM在一个Chrome扩展,它发送XMLHttpRequest来一个网址,获取JSON格式的响应,解析响应,并显示记录列表的工作。它的工作正常。当用户执行任何操作,并返回到上市部分的问题是,系统遵循相同的进程发送了XMLHttpRequest请求,但每次我得到这样的响应:当我加载扩展一切正常,之后无法加载资源:净:: ERR_EMPTY_RESPONSE http://test.com

Failed to load resource: net::ERR_EMPTY_RESPONSE http://test.com 

第一次它总是显示上述错误。

它的两个HTML网页的扩展。一个用于登录和其他列表。我使用Ajax根据结果切换div。

现在怪异的一部分。到目前为止,我的用户中只有3个有这个问题。其中两个有mac和一个windows 8.1。对于所有其他用户来说,它的工作非常好

回答

0

我已经在同样的问题上运行。我开发了一个非常强大的AJAX应用程序,该应用程序在本地主机上运行良好。间歇性地接受使用相同的机器测试活动站点(由GoDaddy托管)按下按钮以激活AJAX功能。

如果我反复按按钮,看什么是在开发工具的时候,我看到了Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data. 通过指示“(失败)”:

enter image description here

在第八企图上面的图片,你可以看到它终于奏效。 验证这是发生在您身上的最佳方法是等待1分钟,然后重复该操作。看来连接的速度是什么导致这个问题,虽然最后一个错误的速度比第一次成功的速度快得多。当我检查其他网站以确认互联网仍然处于“开启”状态时,这可能会对网络浏览器或主机中的设置产生更多影响。根据这answer,你可以看到这似乎是解决问题的办法。但是再次,this answer指出重置网络设置并重新启动机器。

其他的解决方案指向清除浏览器缓存或禁用加载项,但重新加载或刷新是困难的和不可靠的,作为非技术用户的解决方案。最后,这可能与hosting server settings有关。

我怀疑它可能有一些做的服务器检测DDOS攻击(大量小AJAX请求的),所以它暂时块/忽略请求。更改主机(或自主托管)可能是最佳解决方案。