记录一个js判断视频url是否404方案

个人前端仅具备科班知识,用啥查啥的那种,这两天遇到这个问题暂做记录
需求:判断一个视频文件的url是否存在,存在确认url,不存在更换下一个清晰度的url。

问题:视频文件较大ajax不能通过get请求,需要考虑跨域问题jsonp,但get pass,考虑用head。这里有个小问题,需要请教下,我一开始用的jq ajax的head方法,在我本地的某个站点测试可以,但是在项目的本地站点测试会报跨域问题,是站点的jq版本问题么?没搞明白。最后用了下面方案判断是否404解决了问题。

// 校验url是否404
   function  UrlExists(url){
         var  http = new  XMLHttpRequest();
         http.open('HEAD', url, false);
         http.send();
         return  http.status!=404;
    }
// 调用 3种清晰度
   for(var i=3; i>0; i--){
       var url=`https://xxx/xxxx_${i}.mp4`;
       if(UrlExists(url)){
         break;
       }
   }

csdn上看到的
blog.csdn.net/Aria_Miazzy/article/...

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

你当前问题,换个思路,视频90%都用第三方CDN,如七牛 ,阿里oss,他们有接口判断是否存在。

我觉得你可以求助服务端的同学,让他们给你返回 视频url + 可切换的清晰度。

1年前 评论
伽蓝幻梦 (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!