gpt4 book ai didi

Javascript 重定向 404 错误

转载 作者:行者123 更新时间:2023-11-28 18:23:39 27 4
gpt4 key购买 nike

有一个外部网站,其中包含一年中每一天的 html 文档,我正在尝试自动加载当前日期的文档。然而,每个文档的 URL 并不一致。其中一些以 .html 结尾,而另一些则以 .htm 结尾,其中一些可能在文件名后附加一个字母。

我想要做的是尝试加载一个 url,如果导致 404 错误,请尝试加载不同的 url。

例如,我可能会这样做window.location.replace(baseurl+'.htm');如果这导致 404 错误,请尝试 window.location.replace(baseurl+'.html');;如果这导致 404 错误,请尝试其他方法。

如何确定服务器何时发送 404 错误并尝试加载新网址?

最佳答案

这是一个函数,您可以在其中传递要尝试的扩展,它会将第一个有效 URL 返回给回调:

var request = new XMLHttpRequest();
var extensions = ['.html', '.htm'];
var count = 0;
var baseurl = 'http://blah.com/file';

function validUrl(baseurl, cb) {
request.open('GET', baseurl + extensions[count], true);

request.onreadystatechange = function() {
if (request.readyState === 4) {
if (request.status === 200) {
cb(baseurl + extensions[count]);
} else {
count++;
if (count === extensions.length) {
cb(false);
} else {
validUrl(baseurl, cb);
}
}
}
};

request.send();
}

// usage:

validUrl(baseurl, function(url) {
if (url) {
// use the valid url
} else {
console.log('no valid urls');
}
});

关于Javascript 重定向 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39533886/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com