如题,前端在不下载图片的情况下,获取图片的大小,这种需求可能实现吗?我们只知道一个远程图片的url.另外,也可以下载图片,但是图片缓存又是一个问题.不能有任何图片的缓存.这真是一个刁钻的需求...目前我收集了以下方法,但是我并不太确定他是否有缓存..XHRvar xhr = new XMLHttpRequest();
xhr.open('HEAD', 'img/test.jpg', true);
xhr.onreadystatechange = function(){ if ( xhr.readyState == 4 ) { if ( xhr.status == 200 ) {
alert('Size in bytes: ' + xhr.getResponseHeader('Content-Length'));
} else {
alert('ERROR');
}
}
};
xhr.send(null);此方法存在跨域问题.
2 回答

qq_花开花谢_0
TA贡献1835条经验 获得超7个赞
1 head 协议,是从服务器请求文件信息,不是请求文件本身内容
2 根据 head 协议,服务器并不会返回 文件内容
3 如果之前没有访问过,因为没有返回过文件内容,所以也不存在缓存
4 解决缓存这种,加个时间戳的参数就解决了
添加回答
举报
0/150
提交
取消