Мне нужно написать код javascript для плагина construct 2. Ниже мой код:Загрузка фотографий Facebook с помощью JavaScript не работает
Acts.prototype.PublishToWallPHOTO = function (snapshotdata)
\t {
\t \t if (this.runtime.isDomFree || !fbLoggedIn)
\t \t \t return; \t \t
var blob;
\t try
\t {
blob = dataURItoBlob(snapshotdata.replace("data:image/png;base64,", ""),'image/png');
}
\t catch(e){console.log(e);}
\t \t \t
\t \t
\t \t FB.api('/me/photos', 'POST', {
message:'photo description',
source:blob
}, function(response) {
\t if (!response || response.error)
\t \t console.error(response);
\t \t \t });
\t };
\t
\t
function dataURItoBlob(dataURI,mime)
{
var byteString = window.atob(dataURI);
var ia = new Uint8Array(byteString.length);
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
var blob = new Blob([ia], { type: mime });
return blob;
}
для параметра выше кода для "snapshotdata" выглядит следующим образом: «данные: изображения/PNG; base64, iVBORw0KGgoAAAA .......... "
Но мое изображение не было загружено на facebook, используя вышеприведенный код. но с тем же кодом, если я использую url:'http://example.com/abc.png'
вместо source:blob
, тогда он загружает изображение в заданном URL-адресе успешно. Я пытался найти неправильный код выше, но я не смог найти правильное решение. Скажите, пожалуйста, если кто-нибудь знает проблему с вышеуказанным кодом.
пс: жаль бедного английский