簡體   English   中英

nodejs express 4.0發布json對象

[英]nodejs express 4.0 post json object

我正在嘗試解析請求中發送的json對象並回顯正在發送的數據,這是我的發帖請求

    $.ajax({
        url: url,
        type: 'POST',
        contentType: 'application/json',
        data: JSON.stringify({
            name:"Bob"
        }),
        // processData: false, // this is optional
        dataType: 'json'
    });

這是我嘗試訪問對象參數的方式

    var express = require('express');
    var app = express();
    var bodyParser = require('body-parser');
    var router = express.Router();
    app.use(bodyParser.urlencoded({ extended: true }));
    app.use(bodyParser.json());
    app.use('/api', router);
    app.listen(8010);
    router.post('/addUser', function(req, res){
         console.log(req.body);

    }); 

我認為您需要:

router.post('/addUser', function(req, res){
   console.log(req.body.name);  
});

編輯

測試之后,您還會錯過這兩行( 或者您沒有故意包含它們 ):

app.use(router); //You need to register your rooter as a middleware
app.listen(1234); //Your port of choice

這里的關鍵是您使用了中間件“ body-parser ”。

它的作用很簡單,它將解析數據並創建一個body對象作為您請求的參數。

因此,您要查找的name參數將在:req.body.name中找到,而不是在param中找到

從github頁面引用:

需求主體

在中間件之后,在請求對象上填充一個包含已解析數據的新主體對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM