使用body解析器从对象数组中提取对象

问题描述 投票:0回答:1

我正在一个快速应用程序中发送一个对象数组到一个后期路线。

我的表格(以ejs格式)是:

<form action="/archiveList/<%= list._id %>" method="POST">`
<input type="hidden" name="list" value = <%= items %> >
</form>

我的帖子是:

router.post("/archiveList/:id", function (req,res){
var array = req.body.list;
array.forEach(function(obj){
console.log(obj.name)
res.redirect("/main");
});

这给了我一个错误,“array.forEach不是一个函数”如果我:

console.log(array) // I get "[object"

如果我

console.log(typeof(array)) // I get "string".

我的app.js包括:

app.use(bodyParser.urlencoded({extended:true}));.

如果我只是将一个简单的字符串发送到路由并使用req.body提取,这可以正常工作。显然,发送一个对象数组并使用body解析器提取它有一些不同之处我无法弄明白。任何帮助赞赏。

javascript express body-parser
1个回答
0
投票

你可以尝试:

var array = Array.from(req.body.list)

如果req.body.list是一个类似数组的对象,这将起作用。

© www.soinside.com 2019 - 2024. All rights reserved.