У меня есть файл на моем устройстве, который хранится в папке:
/opt/share/folder/image.jpg
Я хотел бы загрузить этот файл на своем сервере, используя какой-либо запрос ajax, как и со стандартной формой HTML.
После нескольких поисков я пришел, чтобы создать файл Blob и загрузить его на сервер; это работает. Но проблема в том, что мой jpeg при прибытии поврежден и содержит костюм цифр и запятых (технически, байты исходного файла):
255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0,0,255,219,0,67,0,8,6,6,7,6,5,8,7,7
API-интерфейс файловой системы Tizen позволяет мне открыть этот файл и прочитать его байты – вот что я делаю. Поэтому я использую следующий код для чтения байтов, создания блоба и загрузки его на моем сервере:
var raw = fs.readBytes(1024); var blob = new Blob([raw], {type:"image/jpeg"}); var formData = new FormData(); formData.append('screenCapture', blob); $.ajax({ type: 'post', url: myurl, processData: false, contentType: false, data: formData, success: function(data){ ... }, error: function(jqxhr, status, msg){ console.log("ERROR! " + msg); } });