[英]Get profile picture from facebook graph api using javascript SDK
[英]Saving Facebook profile picture (fetched from Facebook API) as file object using javascript
我想将facebook个人资料图像URL保存到文件对象,我试图将其转换为base64,然后将其转换为文件对象,但是我想要功能之外的文件对象,这可能是一些愚蠢的问题,但有什么帮助吗? 按照我的尝试
var imgUrl = 'https://dl.dropboxusercontent.com/s/4e90e48s5vtmfbd/aaa.png';
var convertImgToDataURLviaCanvas = function(url, callback) {
var img = new Image();
img.crossOrigin = 'Anonymous';
img.onload = function() {
var canvas = document.createElement('CANVAS');
var ctx = canvas.getContext('2d');
var dataURL;
canvas.height = this.height;
canvas.width = this.width;
ctx.drawImage(this, 0, 0);
dataURL = canvas.toDataURL();
callback(dataURL);
canvas = null;
};
img.src = url;
}
convertImgToDataURLviaCanvas(imgUrl, function(base64_data) {
var byteString = atob(base64_data.split(',')[1]);
var ab = new ArrayBuffer(byteString.length);
var ia = new Uint8Array(ab);
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
var blob = new Blob([ia], {
type: 'image/jpeg'
});
var file = new File([blob], "images.jpg");
console.log(file)
});
您可以使用全局变量并将文件对象分配给函数中的该变量。
基本上拆分var file = new File([blob],“ images.jpg”);
进入
var file = null; //在convertImgToDataURLviaCanvas外部
文件=新文件([blob],“ images.jpg”); //在convertImgToDataURLviaCanvas内部
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.