标签归档:URL

采用XMLHttpRequest验证URL是否有效

有时候在处理某些URL时,可能会遇到404等情况,比如我们在国内使用谷歌地图api一样,我们在请求的时候可能会发生404问题,这个时候我们又想去判断下当前url为404的话,我们则采用其他地图的api,当然我这里所说的仅仅只是一个使用场景,可能你也会遇到其他更多场景,并且也需要验证当前URL的有效性,因此我就直接采用了XMLHttpRequest的方式进行对URL的有效性进行验证。当然对于谷歌地图这个场景,我不建议大家使用这种方法啦,毕竟谷歌地图的api总是抽风,有时候可以访问有时候又不能访问,并且经常不会出现404,基本都是延时很久,所以这个方法不适用与谷歌地图与百度地图的切换判断。
代码及其简单,并且测试也通过了,大部分情况下只要遇到404页面,到能判断到是否有效

let xmlhttp = new XMLHttpRequest();
if (xmlhttp != null) {
    xmlhttp.onreadystatechange = () => {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200) {
                console.log('验证成功,URL可用')
            }
            else {
                console.log("验证失败,URL不可用,错误信息:", xmlhttp.statusText);
            }
        }
    };
    xmlhttp.open("GET", url, false);
    xmlhttp.send(null);
} else {
    console.log('你的浏览器OUT了,不支持XMLHTTP,请更换Firefox、Chrome最新版本浏览器')
}

如果你有更好的方法,请在文章后面给我留言,谢谢!