浏览器是否内置了超时,如果是,那么它们是什么?
我有一个页面在一个进程上执行AJAX调用,最多运行5分钟.有人说浏览器在2分钟后超时,但不知道是否有任何道理.
如何在以下脚本中添加超时?我希望它将文本显示为"超时".
var bustcachevar = 1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects = ""
var rootdomain = "http://" + window.location.hostname
var bustcacheparameter = ""
function ajaxpage(url, containerid) {
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject) { // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} catch (e) {
try {
page_request = new ActiveXObject("Microsoft.XMLHTTP")
} catch (e) {}
}
} …Run Code Online (Sandbox Code Playgroud) 在普通的javascript中执行Ajax请求时,似乎可以设置超时值.请参阅如何在浏览器中检测AJAX(XmlHttpRequest)调用的超时?
当我使用jQuery的ajax实现和其他类似的框架时,它也是可能的.请参阅设置ajax超时(jQuery)
浏览器似乎对其默认超时有相当模糊的规范.请参阅浏览器超时
因此,有人可能会"嘿,我要为我的ajax请求设置超时,以便所有用户都具有相同的超时".
但接下来的问题是:它会在所有情况下实际覆盖浏览器的超时吗?
当我说"所有"情况时,我的意思是,例如,如果浏览器超时值小于您的ajax请求超时值.
我怀疑它没有.
我还怀疑最好总是有一个超时错误处理程序,以确保无论发生什么,您都可以显示相关消息,这将为您的支持团队节省数小时的工作,并为您的公司节省资金.请参阅确定$ .ajax错误是否超时
提前致谢
我使用javascript包含从另一台服务器上的php文件提供的一些内容.但是,这种其他服务有时会变得不稳定,要么需要很长时间才能加载,要么根本不加载.
在失败和停止包含js之前,JS是否有办法尝试获取外部数据x秒.