用 vue 做前端,koa 做后端做一个项目,将前端做完打包后,放在 koa 项目的 static 目录下(需引入koa-static模块),启动 koa 项目,访问/ 那么这个项目就算能正常的使用了
但是有时候我并不想让用户通过/访问,比如需访问 /admin 才加载我的 vue 前端,这个应该怎么做呢
我现在的做法是把这个 index.html 通过 steam 读出来,然后给 ctx.body,代码如下
router.get('/admin', async ctx => {
ctx.type = 'html';
let home = path.join(__dirname, '../static/index.html');
ctx.body = fs.createReadStream(home);
});
不知道这样做法有没有什么问题,大家通常是怎么做的呢?或者说是最好应该怎么做呢?
另:如果后端换做 express 的话又应该怎么做? sendfile 吗?