假设我只有一个图像的URL,我想从跨域脚本中获得它的BAse64字符串值,而不使用DOM、画布或jQuery。这个possible?...by只是使用纯Javascript吗?
发布于 2016-02-24 18:17:08
如果映像是跨域资源,则除非服务器为映像提供适当的CORS标头,否则将无法读取它。浏览器从不允许脚本读取跨源资源的内容(这是相同来源策略的核心),除非跨源服务器显式地允许使用CORS。
假设您有一个具有适当CORS头的图像(或者仅仅是一个相同来源的映像),您可以将该图像作为一个Blob (使用responseType)读取,并将其作为一个文件读取以获得base64 64编码的data: URL:
var xhr = new XMLHttpRequest()
xhr.open("GET", "myimg.png");
xhr.responseType = "blob";
xhr.send();
xhr.addEventListener("load", function() {
var reader = new FileReader();
reader.readAsDataURL(xhr.response);
reader.addEventListener("loadend", function() {
console.log(reader.result);
});
});https://stackoverflow.com/questions/35609595
复制相似问题