2016-10-28 19 views
0

而且使用NPM的身体的解析器,我怎么能在

$http.post('/',data) 

发送数据,这样,当我与

app.route('/').post(function(req,res){ 
    var body_better_be_a_string = typeof req.body; 
}) 

req.body收到它应该是一个字符串类型。试过但req.body总是以[object Object]的形式返回,需要req.body为一个字符串。

回答

0

JSON.stringify(req.body);会给你一个字符串 这就是即时通讯猜测req.body是一个json对象,当[object Object]出现时,你正在尝试查看它。如果使用JSON.stringify,它将被解析为字符串

+0

When I do .. console.log('JSON.stringify(req.body):'+ JSON.stringify(req.body)); 我得到这个在控制台... JSON.stringify(req.body):{} 所以我回来了对象符号括号为字符串,而不是JSON.ody的字符串转换)) –

0

Express文档指定在req.body中发送的数据是键值对的列表,例如,如果您正在发送'application/json'你可以使用JSON.stringify(req.body)来确保它是进一步操作的字符串类型:http://expressjs.com/en/api.html#req.body

此外,它可能会帮助您更新您的问题,理由是“为什么”你需要它是一个串。您尝试实施的操作是否存在某些操作?

此外,您可以包含使用body-parser的Node脚本的其他部分,因为这些部分可能与答案有关。

+0

JSON .stringify(req.body)请将此值返回给我:{}。因此,而不是JSON的字符串表示形式,它将对象表示法作为字符串提供给我。我也评论了我的身体解析器,但我仍然得到一个对象作为我的req.body。 –

+0

您是否可以更新Angular代码块以显示您在发布请求中发送的数据变量的实际内容。 –

+0

我决定将我的请求主体从文本替换为JSON,而使用JSON.stringify(),它一直工作正常。 –

相关问题