NodeJS: загрузка файла на другой сервер вместе с другими данными
Я пытаюсь отправить некоторые данные на другой сервер. Это также включает в себя файл. Вот как я это делаю:
var fs = require("fs");
var request8 = require("request");
var _value = fs.createReadStream(_completefilePath);//File that needs to be sent.
var options = {
method: 'POST',
url: _uploadURL,
headers: {
'content-type': 'multipart/form-data'
},
formData: {
fileName: {
value: _value,
options: { filename: _fileName, contentType: null }
},
data: JSON.stringify(_data)//_data is a JSON object
}
};
request8(options, function (error, response, body) {
if (!error && response.statusCode == 200)
return 1
else
return 0;
});
Я пытался много раз, но я получаю ошибку "ECONNRESET". Я понятия не имею, что не так с запросом выше? Это неправильно сформировано или есть проблема на стороннем сервере?
В основном я пытаюсь загрузить файл на сервер Eventbrite. Код на Python приведен здесь в шаге 2, и это то, что я пытаюсь конвертировать в NodeJS.
[Обновление 1]: Когда я изменил "formData" на "form", я получил statusCode 412(предварительное условие не выполнено).
[Обновление 2]: изменение кода на приведенное ниже приводит к ошибке "Неверный запрос".
var options = {
method: 'POST',
url: _uploadURL,
headers: {
'content-type': 'multipart/form-data',
'Authorization': 'Bearer ' + _token
},
formData: JSON.stringify({
fileName: {
value: _value,
options: { filename: _fileName, contentType: null }
},
data: _data
})
};