Nodejs передают форматы данных вперед - PullRequest
0 голосов
/ 01 октября 2019

Front end => Middel service => End service

Мой внешний интерфейс отправляет файл в мою службу nodejs, выполняя это:

var xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = function() { 
    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
        resolve(xmlHttp.responseText);
    }
}

var data = new FormData();
data.append('file', event.target.files[0]);

xmlHttp.open('POST', '.../utUploadFile');
xmlHttp.send(data);

My End service затем перехватывает это и сохраняетфайл:

app.post('/utUploadFile', async (request, response, next) => {
    const form = new formidable.IncomingForm();

    form.parse(request, async function (err, fields, files) {
        ...save the 'files'
    });
});

Мой вопрос: как мне добавить к этому промежуточный слой, как мне просто взять запрос переднего плана и передать то же самое в службу End для выполнения своей работы:

const http = require('request');
...
app.post(`/utUploadFile`, (request, response, next) => {
    http.post({
        headers: {'content-type': 'multipart/form-data'},
        url: `.../utUploadFile`,
        body: JSON.stringify(request.body)
    }, (err, res, body) => {

    });
});
...