koa中读取文件应该怎么写

初学koa,使用app.use中的ctx直接返回html字符串能显示,但是在里面使用fs.readFile,回调中把data赋值给ctx.body,在浏览器上就显示not found,请问应该怎么写啊,没查到

阅读 9.7k
2 个回答

直接readFile是异步吧,用readFileSync?

或者 参考这样?

var app = require('koa')();
var fs = require('fs');
app.use(function *(){
    this.body = yield new Promise(function(reso,reje){
                fs.readFile(__dirname+'/app.html',function(err,data){
                    if(err) 
                        reso('error');
                    else
                     reso(data.toString());
                })
            }).then(function(data){
                return data
            });
})

app.listen(8910);

koa-sendfile

koa 好像没有直接类似 expressres.sendFile() 这样的语法,得加中间件

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题