以下是我的代码
import { createProxyServer } from 'http-proxy';
import BodyParser from 'body-parser';
const jsonParser = BodyParser.json();
const proxy = createProxyServer({
target: 'http://127.0.0.1:7800',
proxyTimeout: 1000,
});
app.use('/api', (req, res) => {
proxy.web(req, res);
});
proxy.on('proxyRes', (proxyRes, req, res) => {
proxyRes.on('data', (dataBuffer) => {
console.log('req.body ', req.body);
const data = dataBuffer.toString('utf8');
console.log(data);
});
});
我得到req.body as undefined
如果我在jsonParser
中使用中间件app.post(..)
,则此路由会挂起,并且前端会出现超时错误。代码如下。
app.use('/api', jsonParser, (req, res) => {
proxy.web(req, res);
});
我想制作回复日志&请求res.statusCode !== 200
答案 0 :(得分:0)
在清理一些代码后(删除}
额外的,删除重复的行)我能够获得一些可运行的代码,不确定这是否是您正在寻找的。我希望这有帮助。
const proxy = createProxyServer({
target: 'http://127.0.0.1:7800',
proxyTimeout: 1000,
});
app.use(BodyParser())
app.use('/api', (req, res) => {
proxy.on('proxyRes', (proxyRes) => {
proxyRes.on('data', (dataBuffer) => {
console.log('req.body ', req.body);
const data = dataBuffer.toString('utf8');
console.log(data);
});
});
proxy.web(req, res);
});