У меня есть прокси-сервер cors, построенный с помощью express и запроса.
Не могу понять, как установить данные в конце (newbody) в качестве нового тела для его передачи.
Уже пытался установить res.body = newbody или rawBody, похоже, ничего не работает.
var express = require('express');
var request = require('request');
//app, default headers
//populate request with incoming data
var options = {
'method': req.method,
'url': targetURL,
'headers': req.headers,
'body': req.body
};
//make the outward request
request(options, function (error, response) {
if (error) throw new Error(error);
})
//grab the response
.on("response", res => {
//changing headers, cookies, grabbing data
//reading chunks into body var
var readbody = '';
res.on('data', function (chunk) {
readbody += chunk;
});
//changing some stuff on body and turning it back into buffer
res.on('end', function () {
let jsonbody = JSON.parse(readbody);
jsonbody['some_value'] = some_thing;
newbody = new Buffer(JSON.stringify(jsonbody), "binary");
});
//send response onward
.pipe(res);