Сохранить изображение в Dropbox с данными из холста

Я пытаюсь записать данные холста в виде изображения (png) в свой Dropbox. Мне удается получить данные с холста и сохранить файл в Dropbox, но файл не является файлом изображения, который он сшивает.

Согласно документации данные изображения должны быть преобразованы в arrayBuffer. Я использую функцию, найденную здесь, в Stackoverflow, но что-то не работает. Кто-нибудь знает, что я делаю не так?

function _str2ab(str) {
    var buf = new ArrayBuffer(str.length*2); // 2 bytes for each char
    var bufView = new Uint16Array(buf);
    for (var i=0, strLen=str.length; i<strLen; i++) {
        bufView[i] = str.charCodeAt(i);
    }
    return buf;
}

function _savePicture () {

    //Get data from canvas
    var imageSringData = canvas.toDataURL('image/png');
    //Convert it to an arraybuffer
    var imageData = _str2ab(imageSringData);

    client.writeFile('/Public/the_image.png', imageData, function(error, stat) {
    if (error) {
        console.log('Error: ' + error);
    } else {
        console.log('File written successfully!');
    }
});

Вот некоторая документация Dropbox.https://github.com/dropbox/dropbox-js/blob/stable/guides/snippets.md

Ответы на вопрос(1)

Ваш ответ на вопрос