2017-04-16 46 views
1
的NodeJS

這裏是我的html:req.body未定義 -

<form action='/new' method='POST' > 
    <span>pool name: </span> 
    <input type="text" name="name" /> 
    <input type="hidden" name="imageSrcList" /> 
    <button type='submit' >Create new</button> 
</form> 

這裏是相關的JS:

var app = express() 
app.use(fileUpload()); 
app.set('view engine', 'ejs') 
app.use(express.static(__dirname + '/views')); 

app.post('/new', (req, res) => { 
    console.log(req.body.name); 
    }) 

控制檯讀取:

TypeError: Cannot read property 'name' of undefined 

我已經嘗試過console.log(req.body),這也是未定義的。

在此先感謝!

回答

5

您錯過了body-parser中間件,它必須將req.body設置爲一個值。 Express默認不帶此項,需要通過NPM安裝npm i --save body-parser

const bodyParser = require('body-parser') 
app.use(bodyParser.json()) 
app.use(bodyParser.urlencoded({extended: true})) 
+0

完美!謝謝!我會在5分鐘內投票給你。再次感謝! – pudility