如何使用$ http.post将请求正文作为文本发送?

时间:2016-10-28 15:40:34

标签: javascript angularjs express post body-parser

同样使用npm的body-parser,如何在

中发送数据
$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作为字符串。

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

此外,如果您更新问题的原因可能会有所帮助"为什么"你需要它成为一个字符串。是否有一些你试图实施的操作不起作用?

此外,您可以包含使用正文解析器的Node脚本的其他部分,因为这些部分可能与答案相关。