繁体   English   中英

Javascript:从图片网址获取Base64字符串

[英]Javascript: Get Base64 string from an image URL

假设我只有图片的URL,并且我想从跨域脚本中获取图片的BAse64字符串值,而不使用DOM或Canvas或jQuery。 这可能吗?...仅使用纯Javascript?

如果图像是跨域资源,则除非服务器使用适当的CORS标头提供图像,否则您将无法读取该图像。 浏览器从不允许脚本读取跨域资源的内容(这是跨域策略的核心),除非跨域服务器通过CORS明确允许这样做。

假设您确实有一个带有适当CORS标头的图像(或者只是一个同源图像),则可以将其作为Blob获取(使用responseType )并将其作为文件读取以获取base64编码的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);
    });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM