是否存在使用Javascript的方法来监视通过页面中的元素重定向302更改的URL?是否有可能使用JavaScript观察302重定向?
我在远程服务器上有一些脚本,我没有控制权,通过脚本标记加载,这可能会在某些情况下立即将302重定向返回到另一个位置。
这是一种观察这个重定向的方法,并且被通知新的位置,根据加载的URI采取不同的动作吗?
是否存在使用Javascript的方法来监视通过页面中的元素重定向302更改的URL?是否有可能使用JavaScript观察302重定向?
我在远程服务器上有一些脚本,我没有控制权,通过脚本标记加载,这可能会在某些情况下立即将302重定向返回到另一个位置。
这是一种观察这个重定向的方法,并且被通知新的位置,根据加载的URI采取不同的动作吗?
的共同智慧在这里似乎是否定的,但如果你想测试一下尝试使用jQuery的AJAX加载脚本:
var redirected = false;
$.ajax({
url: url,
dataType: "script",
statusCode: {
302: function() {
redirected = true;
}
},
success: function() {
if (redirected) {
// something
} else {
// something else
}
}
});
注意,脚本将已经通过你的时间运行成功的功能,所以这可能是没有用的,即使它有效。
我不这么认为。来自W3C的草稿规范说XMLHttpRequest
将transparently follow重定向,并且甚至没有使用某些东西,只要在页面中添加script
元素,就可以在流程中获得更多的可见性(哎呀,幸运的是从它得到load
/onreadystate
事件)。