ajax调用cant传递参数到nodejs app

时间:2017-08-06 12:02:05

标签: node.js ajax

我通过下面的代码进行ajax调用,并希望看到传递了nodejs app的参数,但它总是空的

@action postData() {
    $.ajax({
  url:"http://localhost:8080/sendMail",
  ContentType:'application/json',
  dataType:'json',
  type:'post',
  data:JSON.stringify({'message':'helloworld'}),
  success:(result) =>{
  ..
})

如果我在邮递员中发布帖子请求(将原始字符串json参数添加到正文; {' message':' helloworld'}),它已通过,我看到它已记录。那么我在reactjsapp中使用的这个ajax调用有什么问题吗?

编辑:它看起来在浏览器中传递的所有参数都很好但不知何故nodejs无法获取它们.. enter image description here

1 个答案:

答案 0 :(得分:1)

由于在HTTP正文中发送了POST数据,因此需要在其中解析JSON以获取它。假设您在服务器端使用express.js,您可以使用body-parser来执行此操作:

var express = require('express')
var bodyParser = require('body-parser')

var app = express()

// parse application/x-www-form-urlencoded 
app.use(bodyParser.urlencoded({ extended: false }))

// parse application/json 
app.use(bodyParser.json())