在Node.js的,我得到這個錯誤,在一些JavaScript代碼:快遞req.param棄用語法
express deprecated req.param(name): Use req.params, req.body,
下面是相關代碼:
response.render('pages/' + displayPage, {
MYVAR: request.param('MYVAR'),
MYVAR2: request.MYVAR,
MYVAR3: request.params.MYVAR
});
換句話說,這行是已棄用
MYVAR: request.param('MYVAR'),
但是,它的工作(至少現在)。
而其他類型的語法我想,通過猜測或通過查找在搜索後的淨額的,都以失敗告終。 包括這些行:
MYVAR2: request.MYVAR,
MYVAR3: request.params.MYVAR
和一些更多的選擇,這將是毫無意義的來港上市。 所以問題是:什麼是正確的語法使用?
下面是一些更多的信息,通過編輯後加讀了一些意見後:
我發送請求的參數是這樣的:
https://myapp.herokuapp.com/branch?MYVAR=64.39
裏面index.js碼處理/分支是:
response.render('pages/' + displayPage, {
MYVAR: request.param('MYVAR'),
MYVAR2: request.params.MYVAR,
MYVAR3: request.params['MYVAR']
});
在branch.ej裏面S檔我已經把下面爲了看看我越來越:
<body bgcolor=#221122E>
<b>MYVAR=<%= MYVAR %></b><br/>
<b>MYVAR2=<%= MYVAR2 %></b><br/>
<b>MYVAR3=<%= MYVAR3 %></b><br/>
......
最後,這是我可以在瀏覽器中看到,顯示的branch.ejs:
MYVAR=64.39
MYVAR2=
MYVAR3=
這表明用舊語法傳遞的變量按預期到達,但不是其他語句。
「失敗」......怎麼樣?這是「POST」還是「GET」請求?什麼是網址? –
「但是,它完成了工作(至少現在是這樣)」但它可能不會持續很長時間。檢查了這一點:https://stackoverflow.com/questions/28949266/replacement-for-req-param-that-is-deprecated-in-express-4 – Thomas
我認爲它的request.params.MYVAR –