Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTTP重定向回退_Javascript_Http - Fatal编程技术网

Javascript HTTP重定向回退

Javascript HTTP重定向回退,javascript,http,Javascript,Http,有没有一种方法可以在HTTP重定向超时时提供回退URL?我试图实现的是,当我点击原始url时,我会用HTTP重定向(300307?)响应,为浏览器提供新url和备用url,以防新url超时 我也在考虑做这个客户端,但它似乎不是很有效(在速度、客户端支持方面)。我要做的可能是在每台服务器上都有一个很小的1x1px映像,尝试加载它,然后用javascript检查哪个服务器在运行并重定向到那里 还有其他想法吗?谢谢我认为这只能通过JavaScript实现。在发送重定向之前,您可以进行一次快速的服务器端

有没有一种方法可以在HTTP重定向超时时提供回退URL?我试图实现的是,当我点击原始url时,我会用HTTP重定向(300307?)响应,为浏览器提供新url和备用url,以防新url超时

我也在考虑做这个客户端,但它似乎不是很有效(在速度、客户端支持方面)。我要做的可能是在每台服务器上都有一个很小的1x1px映像,尝试加载它,然后用javascript检查哪个服务器在运行并重定向到那里


还有其他想法吗?谢谢

我认为这只能通过JavaScript实现。在发送重定向之前,您可以进行一次快速的服务器端测试,但这并不可靠,尤其是当服务器位于同一服务器场中时

最可靠的事情肯定是有一个JavaScript,它可以向服务器发出一个快速的Ajax请求(仅头部),并在成功时重定向。如果失败,请尝试下一个服务器。。。等等


但这真的有必要吗?如果目标服务器有如此多的停机,您需要以编程方式对其作出反应,那么重新定位服务器(或采取任何必要措施修复停机)可能是值得的。

实际上,这样做的原因有点不同。我试图做一些“新”的事情,而不是防止服务器停机。我想,如果除了javascript没有其他方法,那么出于性能原因,就不值得这么做。谢谢anyway@Ondrej不客气。如果您事先知道重定向目标,您可以做的是在后台过程中频繁轮询/ping它们,并维护一种包含备选目标的黑名单。这样,检查可达性的行为将独立于客户机的请求。也许这是一个选择(取决于你想做什么)。