- 创建XMLHttpRequest对象
- 设置调用方式为GET
- 设置请求头参数:主要设置文件类型
- 设置响应类型:responseType为“blob”
- 调用
javascript
/**
* 根据图片url转为png文件对象
* @param url
* @param imageName
* @returns {Promise<unknown>}
*/
function getImageFileFromUrl(url, imageName) {
return new Promise((resolve, reject) => {
var blob = null;
var xhr = new XMLHttpRequest();
xhr.open("GET", url);
xhr.setRequestHeader('Accept', 'image/png');
xhr.responseType = "blob";
// 加载时处理
xhr.onload = () => {
// 获取返回结果
blob = xhr.response;
let imgFile = new File([blob], imageName, { type: 'image/png' });
// 返回结果
resolve(imgFile);
};
xhr.onerror = (e) => {
reject(e)
};
// 发送
xhr.send();
});
}