data ){console.log(xhr.getResponseHeader( "hls-next" ));hlsN
HTTP 中界说了 7 种请求方法:GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。
【GET:获取资源】【POST:传输实体文本】【HEAD:获得报文首部】【PUT:传输文件】【DELETE:删除文件】【OPTIONS:询问撑持的要领】【TRACE:追踪路径】【CONNECT:要求用地道协议连接代办代理】
下面我们使用HEAD方法来实现不才载文件前通过获得返回报文的头部来获取文件巨细:
var url = ‘‘; //文件下载链接 var fileSize = 0; //下载文件巨细 var xhr = new XMLHttpRequest(); xhr.open(‘HEAD‘, url, true); // 也可用POST方法 xhr.onreadystatechange = () => { if (xhr.readyState == 4) { if (xhr.status == 200) { fileSize = xhr.getResponseHeader(‘Content-Length‘); console.log(fileSize) } else { alert(‘ERROR‘); } } }; xhr.send()
这种发放在业务逻辑中一般用来获取后台通过报文头部通报的参数,,不但是来获取文件巨细。
ajax方法的代码如下:
$.ajax({ url: item.m3u8Url, async: false, timeout: 2000, // type: ‘HEAD‘, complete: function( xhr,data ){ console.log(xhr.getResponseHeader("hls-next")); hlsNext = Math.floor(xhr.getResponseHeader("hls-next")/1000) console.log(‘hlsNext‘,hlsNext) } });
js通过HEAD请求方法提前获取下载文件巨细,XMLHttpRequest和ajax两种实例
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31654.html