我正在尝试设计我的NodeJS应用程序,但我有些困惑。
在我的应用程序中,我计划将所有前端材料放在文件夹/public
中然后放行
app.use(express.static(__dirname + '/public'));
在我的app.js
文件中。
所以有了这个,用户就可以转到thesite.com/gallery/stuff
了,因为gallery
文件夹在/public
中,所以它会有效。
但是如果我不希望用户能够访问此区域该怎么办?例如,我如何拦截他的请求并确保他已登录?有没有办法让公共文件夹的某些部分不那么公开?
答案 0 :(得分:0)
你可以把路由器放在它前面
app.all('/gallery/*', function(req, res, next){
if(!req.user) next(new Error('You shall not pass!'));
else next();
});
app.use(express.static(__dirname + '/public'));