要处理请求,请首先确定文件是否退出。如果不存在,请先创建文件,最后返回文件,但是如果文件不存在,则返回文件为空...
fn: async ctx => {
let filePath = path.join(__dirname,'..',fileDir,fileName)
if (!fs.existsSync(filePath)){
if(!fs.existsSync(fileDir)){
fs.mkdirSync(fileDir)
}
command = batCommand + ctx.req.query.git_name + " " + ctx.req.query.git_email
await fs.writeFile(filePath,command,err =>{
if (err){
return err
}
return "ok"
})
}
ctx.res.download(filePath)
return 1
}
我知道回调函数的返回。
答案 0 :(得分:0)
希望此代码段可以解决您的问题,
fn: ctx => {
let filePath = path.join(__dirname, '..', fileDir, fileName)
try {
if (!fs.existsSync(filePath)) {
if (!fs.existsSync(fileDir)) {
fs.mkdirSync(fileDir)
}
command = batCommand + ctx.req.query.git_name + " " + ctx.req.query.git_email
fs.writeFileSync(filePath, command);
}
return ctx.res.download(filePath)
} catch{
return err
}
}