前端=> Middel服务=>最终服务
我的前端通过执行以下操作将文件发送到我的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);
然后,我的End服务捕获了该错误并保存了文件:
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) => {
});
});