从响应对象获取请求体

8

我正在尝试通过响应对象检索请求的正文。

var request = require('request');

request({
    ...
    body: {
        foo: 'bar'
    }
}, function(err, res, body) {
    var reqBody = res.request.body;
});

但是现在请求体是一个缓冲区。我该如何将其转换回JavaScript对象?

注意:在进行HTTP请求之前,我无法将请求体存储在具有更大作用域的变量中。

1个回答

5
弄清楚了,比我想象的简单多了。
var reqBody = res.request.body.toString();
reqBody = JSON.parse(reqBody);

首先将其转换为 JSON,然后将 JSON 转换为 JavaScript 对象。


2
那个在主体上的'toString'不起作用,我必须使用JSON.stringify。 - Dee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接