是否可以使用javascript观察302重定向?

时间:2011-07-22 16:13:46

标签: javascript http url http-status-code-302

使用Javascript,是否有一种方法来监控通过页面元素上的302重定向更改的URL?

我在远程服务器上有一些脚本,我无法控制,通过脚本标记加载,在某些情况下,可能会立即将302重定向返回到另一个位置。

这是一种观察此重定向并获得新位置通知的方法,根据加载的URI采取不同的操作吗?

2 个答案:

答案 0 :(得分:1)

这里的常识似乎不是,但如果你想测试它,请尝试使用jQuery的ajax加载脚本:

var redirected = false;
$.ajax({
    url: url,
    dataType: "script",
    statusCode: {
        302: function() {
            redirected = true;
        }
    },
    success: function () {
        if (redirected) {
            // something
        } else {
            // something else
        }
    }
});

请注意,当您到达成功功能时,脚本已经运行,因此即使它可以正常工作也可能完全无用。

答案 1 :(得分:0)

我不这么认为。 W3C的草案规范说XMLHttpRequest transparently follow重定向,你甚至没有使用能够让你 在这个过程中获得很多可见性的东西只需在页面中添加script元素(哎呀,您很幸运能从中获取load / onreadystate个事件。