![](/img/trans.png)
[英]How to POST content as application/x-www-form-urlencoded
[英]Parsing application/x-www-form-urlencoded in Expressjs
我正在使用Angular發布到我的API。 在處理CORS時,我已將標頭設置為www-form-urlencoded
以避免“飛行前”。
$http.post(url, {key1: value1, key2: value2},{"headers":{ "Content-Type" : "application/x-www-form-urlencoded; charset=UTF-8" }}).
success(function(data, status, headers, config) {
}).
error(function(data, status, headers, config) {
});
現在的問題是,即使我在server.js
中擁有了我認為可以完成工作的對象,我似乎也無法解析正在發布的對象:
var bodyParser = require('body-parser');
app.use( bodyParser.urlencoded({ extended: true }));
我試圖訪問與所述所張貼值req.body.key1
但我越來越undefined
您實際上並沒有發送application/x-www-form-urlencoded
數據,因此中間件變得混亂。 設置Content-Type
標頭可以告訴服務器您正在發送哪種數據,但是實際上您並沒有在任何地方更改數據格式,因為沒有任何東西告訴Angular您要發送經過urlencoded
數據,因此服務器仍在獲取JSON 。
該答案顯示了如何對數據進行編碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.