我是新手,我对想要实现的功能感到困惑。下面是我用于从数据库读取 csv 文件的 api(只有保存在数据库文件中的名称使用 multer 保存在本地文件夹中)。我能够读取文件并使用console.log 打印它。但是当我尝试将文件转换为 json 时,我收到了这个错误:(节点:13004)UnhandledPromiseRejectionWarning:错误:文件不存在。检查以确保 csv 的文件路径正确。请帮我。任何提示或支持表示赞赏。提前致谢。
graphFromcsv: async (req, res, next) => {
try{
if(!req.body){
throw new Error("sorry no data, error occured")
}
const {id, sesid} = req.body;
const user = await models.graph.findAll({
attributes: [
"document"
],
where:{
id:id,
sesid:sesid
}
});
console.log(user,"csvfile of session")
var csvdata = user
console.log(csvdata,"csvdata");
var fs = require("fs");
console.log("aadsad")
fs.readFile(`./public/files/${csvdata}`,'utf8', async function(err,data){
console.log("csvdatainside",csvdata );
const csv=require('csvtojson')
const filepath = `./public/files/${csvdata}`;
console.log(filepath,"csvfilepath")
if(csvdata){
const jsonarray = await csv().fromFile(filepath);
console.log(jsonarray,"jsonarray")
}
});
console.log("checked")
res.status(200).json({
message: " success ",
});
}catch (err) {
res.status(400).json({
message:err.toString(),
});
}
}
我正在使用带有 sequelize 的 mysql 数据库。