Express.js POST空req.body

时间:2016-04-25 14:08:12

标签: javascript node.js express

无法通过简单搜索解决此问题。如果有人能说得更清楚吗?

在客户端我尝试将对象附加到xhr.send(obj)。 在尝试追加到formData对象时,结果相同... 客户代码:

ScrollThumb

在后端我试图以这种方式得到req.body:

var xhr = new XMLHttpRequest()    
xhr.open("post", "/api/test", true)

var formData = new FormData()
formData.append("hi", "hello")

xhr.send(formData)

xhr.onreadystatechange = function() {
  if (this.readyState != 4)
    return
  if (this.status != 200) return console.error(this.status + this.statusText)
  else console.log(this.responseText) 
}

不知道为什么,但每次我打印出的只是空物。我前几次扯过前端发送物品。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以尝试添加:

//Send the proper header information along with the request
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

就像这个express(正文解析器)理解它必须解析传入的数据。