【问题标题】:Ionic 3 http post - reading body data in nodejsIonic 3 http post-在nodejs中读取正文数据
【发布时间】:2017-08-23 03:13:43
【问题描述】:

我正在尝试发送 http 帖子正文数据。它适用于 angular,但现在我使用的是 ionic。任何帮助表示赞赏。

let newMember = {
    "sendData": [{
            name: "first_name",
            val: "mike"
               },
        {
            name: "last_name",
            val: "tester"
               },
        {
            name: "city",
            val: "new york"
               },
        {
            name: "state",
            val: "NY"
               },
        {
            name: "zip",
            val: "10001"
               }]
}

let body = new FormData();
body.append('newMember', JSON.stringify(newMember));


 this.http.post('https://data.testme.com/setup',newMember,{headers: headers
    }, body)
    .map(res => res.json())
    .subscribe(data => {
        console.log(data);
    });

}

这就是我尝试将其发送到 nodejs 服务器的方式。

我的 nodejs 将它截断在体内。

console.log("sendData req.body --> " , req.body);

   {sendData: [{
            name: 'first_name',
            val: 'mike'
               },
        {
            name: 'last_name',
            val: 'tester'
               },
        {
            name: 'city',
            val: 'new york'
               },
        {
            name: 'state',
            val: 'NY'
               },
        {
            name: 'zip',
            val: '10001'
               }]
    }

我在我的输出日志中发现了这个。我之前正在查看我的错误日志。显示错误,因为它可以读取:

 var newMember = req.body.newMember;

如何在 Node.js 中读取 newMember ??

谢谢 菲尔

【问题讨论】:

  • 您允许在节点中使用哪些标头?你在使用 cors() 吗?
  • 另外,您能否分享一下路线以及您如何在节点中设置它,例如 app.post() 或 router.route() .post...

标签: node.js angular ionic2 ionic3


【解决方案1】:

您的参数不匹配。见documentation

试试这个

this.http.post('https://data.testme.com/setup', body, {
        headers: headers
    })

【讨论】:

  • 你是对的,我确实把尸体放在了错误的地方。现在我如何读取nodejs上的json数据。
  • @philipfwilson 问题是你没有发送json,它的表单数据设置标题看这里stackoverflow.com/questions/44006844/…
  • @philipfwilson 现在你可以自豪了 ;)
【解决方案2】:

并添加插件 允许控制允许来源:*

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

this.http.post(https://data.testme.com/setup/', newMember).map(res => res.json()).subscribe(data => {
                     console.log('error'+data); 
                     },err => {
                       console.log('error'+err); 
                    });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-19
    • 2018-08-15
    • 2018-01-24
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多