下面是我的代码为什么req.body在“proxyRes”
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为未定义
如果我在app.post(..)
使用中间件jsonParser
那么这个路线挂起,我得到了一个未定义前端超时错误。代码如下。
app.use('/api', jsonParser, (req, res) => {
proxy.web(req, res);
});
我要让响应&请求日志时res.statusCode !== 200
请修正你的代码的一些东西,让我们知道,如果这个问题继续下去。首先删除额外的'}'导致语法错误。也删除重复的行'const jsonParser = BodyParser.json();' 'target'选项需要知道它的协议,所以试试:'http://127.0.0.1:7800' 即使这工作正常,您的代码是在req.body不存在的情况下 –
@DanielAristizabal谢谢,我已经做了语法修复。 –