Я читаю байты из файла в чанках, затем пытаюсь загрузить каждый чанк (который является буфером байтов), когда я использую тип контента в качестве 'multipart / from-data', он выдает ошибку, что граница не определена.Как определить границу, фрагмент моего кода выглядит следующим образом:
const fs = require('fs');
function getByteArray(filePath){
let fileData = fs.readFileSync(filePath);
return fileData;
}
url = "http://localhost:8080/upload"
uploading = function (file){
var fileBuffer = getByteArray(file)
var buffer = Buffer.from(fileBuffer);
var i,tempBuf
for (i=0;i< buffer.length; i+=(500)) {
tempBuf = buffer.slice(i,i+(500));
postRequest(url, tempBuf)
};
}
postRequest: function postRequest(url, byteBuffer) {
return new Promise(function(resolve, reject) {
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
const xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(e) {
if (xhr.readyState === 4) {
if (xhr.status === 200) {
resolve(xhr.responseText)
} else {
reject(xhr.status + "--" + xhr.responseText)
}
} else if (xhr.status != 200){
// console.log()
}else {
// console.log()
}
}
xhr.ontimeout = function () {
reject('timeout')
}
xhr.open("POST", url, true)
xhr.setRequestHeader("Content-Type","multipart/form-data");
xhr.send(byteBuffer);
})
}
и ошибка выглядит следующим образом:
"result":null,"error":{"code":"request_parse_error","msg":"multipart: NextPart: EOF"}