Javascript 是否可以打开<;img>;在网页上使用FileReader访问base64?
我已经有了Javascript 是否可以打开<;img>;在网页上使用FileReader访问base64?,javascript,google-chrome,google-chrome-extension,filereader,Javascript,Google Chrome,Google Chrome Extension,Filereader,我已经有了 var img=newimage(); img.src=src url 如何将其传递给文件阅读器? PS:我不使用canvas获取base64,因为canvas同样支持gif格式。一个使用最新版本的示例,它与旧浏览器不兼容 var xhr = new XMLHttpRequest(); xhr.open('GET', 'http://www.gravatar.com/avatar/40ca36f062050220082cd8c46b377ab4?s=32&d=identico
var img=newimage();
img.src=src url代码>
如何将其传递给文件阅读器?
PS:我不使用canvas获取base64,因为canvas同样支持gif格式。一个使用最新版本的示例,它与旧浏览器不兼容
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://www.gravatar.com/avatar/40ca36f062050220082cd8c46b377ab4?s=32&d=identicon&r=PG', true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
var blob = new Blob([this.response], {type: 'image/png'});
var reader = new FileReader();
reader.onload = function() {
console.log(reader.result)
};
reader.readAsDataURL(blob);
};
xhr.send();
远程图像。可能吗?检查“远程图像。可能吗”。不可以。如果映像位于同一个域上,或者另一个域配置为支持CORS,则必须使用服务器端代理。@dfsq。是的,这可以通过使用最新的API实现。是的,你说得对。对于chrome扩展,它只允许CORS。谢谢你的帮助。@Tom只需向清单文件添加正确的权限,chrome将很乐意为你提出跨源请求<代码>“权限”:[“http://www.gravatar.com/avatar/*“]
例如。