2016-05-31 190 views
1

我似乎無法弄清楚爲什麼當我做一個提供數據體的axios.post方法時,它會被捕獲爲未定義在我的服務器上。處理POST請求與axios和快遞

,我有以下的文件與代碼片段:

app.js:

auth(user, pass){ 
    return axios.post('http://localhost:3000/auth', { 
     username: user, 
     password: pass 
    }) 
} 

server.js:

app.post('/auth', (req, res) => { 
    console.log(req.body) //undefined 
    res.end("Success") 
}) 

我我怎麼能妥善處理POST數據使用axios?我錯過了什麼嗎?

成功返回罰款,但似乎用戶名/密碼不能被在REQ隨處可見

+0

你是否在任何請求處理程序處理xhr請求之前使用中間件? 像: 'app.use( '/ *',函數(REQ,RES,下一個){ res.header( 「訪問控制允許來源」, 「*」); res.header( 「Access-Control-Allow-Credentials」,「true」); res.header(「Access-Control-Allow-Methods」,「GET,HEAD,OPTIONS,POST,PUT」); res.header -Control-Allow-Headers「,」Access-Control-Allow-Headers,Origin,Accept,X-Requested-With,Content-Type,Access-Control-Request-Method,Access-Control-Request-Headers「); next(); });' –

+0

啊,是的,它似乎使用了webpack-dev-middleware和webpack-hot-middleware。雖然我不相信這些會影響POST處理。我可能需要深入挖掘,因爲我使用[樣板](https://github.com/choonkending/react-webpack-node) –

+0

實際上,它似乎也使用bodyParser來處理POST請求。 –

回答

2

原來我已經安裝了的順序我所有的中間件;在使用任何中間件之前,我試圖在我的server.js文件中處理POST。

+0

我有類似的問題,但不明白你是如何解決它的。 –

+2

對不起,遲到的迴應。對於我的情況,我必須確保在建立任何路由之前快遞處理所有中間件。因此,確保您在運行任何GET或POST路由之前設置所有的app.use([middleware])配置 –