我需要获取POST请求的rawBody(缓冲区),但是我只需要在应用程序中的单个路由上执行此操作。
当前,我在主app.js
中使用以下内容:
app.use(bodyParser.json({ verify: function(req, res, buf) { req.rawBody = buf; }}));
这可行,但是它正在为每个路由发送缓冲区。这是不理想的,因为它对我的应用程序中的每个请求都使用两倍的RAM。
我该如何在需要它的单条路线上获取rawBody?
最佳答案
通常,您将创建该单一路由并内联中间件:
app.post('/route', bodyParser.json(...), function(req, res) {
...
});
随后是“常规”设置:
app.use(bodyParser.json());
app.post('/another-route', function(req, res) {
...
});
除了滥用
bodyParser.json()
,您还可以考虑使用bodyParser.raw()
。关于javascript - Express:rawBody/缓冲区在单个路径上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46120988/