我目前正在为同事开发一个'Dupe‘网络应用程序。这是我第一次使用'csvtojson‘包。
我正在服务器上读取文件,但是当我将响应发送回客户机(理想情况下包含一个json对象)时,我得到了这个非常奇怪的控制台日志,我不确定它是否正确:

为了获得这个响应,我在主页上有一个按钮,当单击时,客户端在服务器的主目录上发出一个http请求,名为‘/getnum’。请求从CSV读取,然后应该是返回和obj及其内容。它就是这样做的,在屏幕截图中,如果我点击promiseValue旁边的滴答,它会给我一个数组。但我不知道为什么它会返回一个Promise..anyway..。
api.js:
var CSVDATA = () => {
fetch('/getnums')
.then(res => {
console.log(res.json())
})
}
export default {
CSVDATA,
}‘/getnum’转到我的路由器,这是简单的router.get('/',mainController.getNums)
在控制器中是读取开始的位置:
const csv = require('csvtojson')
module.exports = {
getNums: (req, res, next) => {
const csvFilePath = `${__dirname}/../../client/readFrom/main.csv`
csv().fromFile(csvFilePath)
.then(jsonObj => {
return res.status(200).json(jsonObj)
})
.catch(e => {
req.error = e
next()
})
},
}有人知道这是怎么回事吗?
发布于 2018-08-29 14:36:46
这就是.json()的工作方式。
它返回允诺,因此您需要异步处理它。
var CSVDATA = () => {
fetch('/getnums')
.then(res => res.json())
.then(json => console.log(json));
}
export default {
CSVDATA,
}https://stackoverflow.com/questions/52079933
复制相似问题