0

我有一个 jQuery ajax 函数调用来加载数据。当我在 Chrome 中进行测试时,有时它不会调用请求完成功能,有时它会起作用。请让我知道可能是什么原因。

var request = $.ajax({
    url: data_url,
    type: 'post',
    data: ""
});
request.done(function(result)
{
    console.log("Done");
}

URL 和一切都是正确的,因为它有时会在我单击刷新时起作用。当我从浏览器发送流时,是否需要传递一些结束代码?

在服务器端,我使用 PHP 回显函数来发送编码的 JSON。

4

2 回答 2

1

您的代码似乎没有错。我有时遇到的一个问题是 Web 浏览器限制了对服务器的并发请求数。因此,如果您在服务器代码中设置了断点,您很容易在调试会话期间遇到您描述的问题。另请参阅流行浏览器中允许多少并发 AJAX (XmlHttpRequest) 请求?

于 2013-09-28T10:59:13.660 回答
0

你的后端挂了。刷新时有时会起作用的原因是浏览器在刷新时取消了请求,导致 xhr 完成。

您可以从命令行尝试使用 curl 以确保:

$ curl -iX POST --data "" data_url
于 2013-09-28T10:56:21.533 回答