【发布时间】:2010-05-13 11:54:39
【问题描述】:
我将以下内容用于长轮询请求...
$.getJSON(url, function(data) {
...
});
在 30 秒过去或有信息要发送(长轮询)之前,请求不会完成。
问题在于 Firefox 是唯一会在底部显示“Waiting for URL...”的浏览器。有什么办法可以预防吗?
【问题讨论】:
标签: jquery firefox long-polling
我将以下内容用于长轮询请求...
$.getJSON(url, function(data) {
...
});
在 30 秒过去或有信息要发送(长轮询)之前,请求不会完成。
问题在于 Firefox 是唯一会在底部显示“Waiting for URL...”的浏览器。有什么办法可以预防吗?
【问题讨论】:
标签: jquery firefox long-polling
这很糟糕,因为有些用户只会坐在那里等待页面“加载”,而 Firefox 并不是唯一这样做的浏览器。不幸的是,我认为没有使用一些相当奇特的技术来解决这个问题的简单方法。 如果持续时间是由于服务器处理时间而不是数据传输到客户端,您可能会尝试的一件事是使用伪异步调用。当您收到请求时,在服务器上启动一个新线程并返回一个令牌,这将清除消息。每 'x' 秒将令牌发送回服务器以检查请求是否完成。只需确保在异步请求的两端复制当前请求所需的任何安全/身份验证方法即可。
【讨论】: