Javascript 如何在Node.js的req.body中的数组上使用Object.values?

Javascript 如何在Node.js的req.body中的数组上使用Object.values?,javascript,node.js,arrays,vue.js,Javascript,Node.js,Arrays,Vue.js,我正在Vue.js和Node.js中创建应用程序。我正在将阵列发送到后端,其中键是id号: 当我在前端使用它时: console.log(Object.keys(item)[2]) console.log(Object.values(item)[2]) 它显示正确的值: 当我在后端使用相同的方法时: router.post('/post', (req, res) => { let data = req.body; console.log(Object.keys(data)[2])

我正在Vue.js和Node.js中创建应用程序。我正在将阵列发送到后端,其中键是id号:

当我在前端使用它时:

console.log(Object.keys(item)[2])
console.log(Object.values(item)[2])
它显示正确的值:

当我在后端使用相同的方法时:

router.post('/post', (req, res) => {
  let data = req.body;
console.log(Object.keys(data)[2])
console.log(Object.values(data)[2])
});
我得到未定义的值

如何在后端正确显示此数据

编辑:

trans.service.js:

    static async addTrans(item) {
        console.log(item)
        console.log(Object.keys(item)[2])
        console.log(Object.values(item)[2])
        const res = await api.post('translation/post', item);
        try {
            return res.data;
        } catch (err) {
            return err;
        }
    }
控制台日志中的项目值:

[
60a2381cbcecaa11346bd7c2: ""
60a23815bcecaa11346bd7c1: "nnn"
609e5e1e6f19442da0fe5b99: "bbbddd"
609e5e166f19442da0fe5b98: ""
]

如果您正在为服务器使用
express
,那么要读取JSON数据,您需要添加

app.use(bodyParser.json())
形成npm包

Json编码不是express的默认值


另外,请尝试检查,您正在将正确的
内容类型
标题从浏览器传递到节点,它应该是
'application/json'
,您可以在浏览器的“网络”选项卡中进行检查。

问题是,在前端,我将此项声明为数组,并且它应该是一个对象。我把数组改成了一个对象,它成功了。

你能先控制台记录你的req.body并检查它记录了什么吗?@Mayur afrer使用
console.log(req.body)
我得到了这个:
[]
因此,您是否可以验证您是否将数据作为正文的一部分正确地发送到post Request。此问题中的第一个数据图像是请求中发送的内容的console.log。您是否可以复制trans.service.js文件中的代码段,我认为只有在执行post请求时才会出现一些问题,我使用express而不是body解析器:
app.use(express.urlencoded({extended:true}))
app.use(express.json())
。在这种情况下是否也需要正文解析器?如果您使用的是
express.json()
,则不需要
bodyParser.json()
,请检查网络选项卡,如果数据是从网络调用发送的,我希望不是GET请求,req.body与POST-etc一起工作这个问题中的第一个数据映像是前端请求中发送的内容的console.log,但是在后端使用
console.log(req.body)
后,我得到的结果是:
[]
我认为您可能需要深入研究
const res=wait api.POST('translation/POST',item)原因是,它可能正在将数组字符串化为空。您可以检查网络选项卡吗?发送请求时,这将验证问题是否与前端或后端有关,console.log()在UI中可能没有帮助,请检查网络日志