有没有一种简单的方法可以检测 XMLHttpRequest 在浏览器窗口中是否处于活动状态?或者有多少是活跃的?IE.有没有办法检测我的浏览器窗口中是否有任何 AJAX 调用处于活动状态?
Is there an easy way to detect if an XMLHttpRequest is active in the browser window? Or how many are active? ie. Is there a way to detect if there are any AJAX calls active in my browser window?
问题扩展: 使用 javascript 有没有办法可以查看是否打开了任何 XMLHttpRequests?比如window.XMLisActive()"之类的?
Extension of question: Using javascript is there a way I can see if any XMLHttpRequests are open? Such as "window.XMLisActive()" or something like that?
解决方案:最终为 XMLHttpRequest 编写了一个包装器:gist here
Solution: Ended up writing a wrapper for XMLHttpRequest: gist here
除非您为 XmlHttpRequest 编写一个包装器(或对其进行猴子补丁),否则无法检测来自 JS 的打开连接跟踪打开的连接.
There is not a way to detect an open connection from JS unless you write a wrapper for XmlHttpRequest (or monkey patch it) that keeps track of opened connections.
这里是kidcapital的猴子补丁,不确定是否完美,但这是一个好的开始
Here's kidcapital's monkey patch, not sure if it's perfect, but it's a good start
(function() {
var oldOpen = XMLHttpRequest.prototype.open;
window.openHTTPs = 0;
XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {
window.openHTTPs++;
this.addEventListener("readystatechange", function() {
if(this.readyState == 4) {
window.openHTTPs--;
}
}, false);
oldOpen.call(this, method, url, async, user, pass);
}
})();
注意
这不处理 fetch 或 websockets,但你可以在这些情况下做类似的事情.
This does not handle fetch or websockets but you could do something similar in those cases.
这篇关于如何检查 HTTP 请求是否在浏览器中打开?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
即使在调用 abort (jQuery) 之后,浏览器也会等待Browser waits for ajax call to complete even after abort has been called (jQuery)(即使在调用 abort (jQuery) 之后,浏览器也会等待 ajax 调用
JavaScript innerHTML 不适用于 IE?JavaScript innerHTML is not working for IE?(JavaScript innerHTML 不适用于 IE?)
XMLHttpRequest 无法加载,请求的资源上不存在“AXMLHttpRequest cannot load, No #39;Access-Control-Allow-Origin#39; header is present on the requested resource(XMLHttpRequest 无法加载,请求的资
XHR HEAD 请求是否有可能不遵循重定向 (301 302)Is it possible for XHR HEAD requests to not follow redirects (301 302)(XHR HEAD 请求是否有可能不遵循重定向 (301 302))
NETWORK_ERROR:XMLHttpRequest 异常 101NETWORK_ERROR: XMLHttpRequest Exception 101(NETWORK_ERROR:XMLHttpRequest 异常 101)
XMLHttpRequest 206 部分内容XMLHttpRequest 206 Partial Content(XMLHttpRequest 206 部分内容)