前言
当我们访问 无效的 URL 时页面会报错(如下),这让用户的使用体验变得很差,如果在点击前对 URL 进行判断是否有效,再根据判断结果进行下一步操作,如果该 URL 真实有效则进行 xxxxx 操作 , 无效则提示用户该 URL 无法访问不进行跳转。( vue 项目 引入 jquery 可以看我的 另一篇文章)
判断 URL 是否有效
方法一 :仅适用于 IE ( 不推荐)
function getUrlState(URL) {
var xmlhttp = new ActiveXObject("microsoft.xmlhttp");
xmlhttp.Open("GET", URL, false);
try {
xmlhttp.Send();
} catch (e) {
} finally {
var result = xmlhttp.responseText;
if (result) {
if (xmlhttp.Status == 200) {
return true;
} else {
return false;
}
} else {
return false;
}
}
}
方法二:支持跨域
利用 jquery 的 ajax 请求返回请求结果进行判断, 如果这个 url 不存在,ajax 请求会返回 404 . 然后判断 返回的状态码,能响应200,说明 url 真实有效 ,状态码为其它则表示 URL 出现问题,需要发出提示
2、使用 timeout,在服务端出错时(http 状态码为:5XX、4XX),jquery 无法捕获到这个错误
$.ajax({
type:'get',
url:this.resume.resumeUrl,
dataType: 'jsonp',
timeout: 1000,
complete: function (res) {
if (res.status == 200) {
window.open(resumeUrl) // 这里是打开该 URL ,可以根据自己的需求更改逻辑代码
} else {
this.$message.error('文件无效或已删除');
}
}
})
文章如有错误,恳请大家提出问题,本人不胜感激 。 不懂的地方可以评论,我都会 一 一 回复
文章对大家有帮助的话,希望大家能动手点赞鼓励,大家未来一起努力 长路漫漫,道阻且长
原文地址:https://blog.csdn.net/qq_52855464/article/details/126400752
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_28456.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。