【发布时间】:2020-05-06 22:01:58
【问题描述】:
我的 html 页面不应该被未登录的用户看到。我使用下面的命令,我的 html 页面被公开了。
app.use(express.static('public'));
例如,我不希望未登录的用户看到此页面。
http://localhost:3000/admin.html
注意:我所说的不是 cookie。当你在工具栏中输入html页面的地址时,如果没有登录,应该是无法到达那个页面的。
【问题讨论】:
-
你需要一些条件,比如
app.get('/protected', (req, res) => { if (req.user) { ... -
但是如果用户手写,他还看不到吗?例如 www.example.com/protected.html 。因为它不会去 /protected,它会去 /protected .html
-
听起来我们这里只是在谈论授权。您可以通过在 apache auth、nginx 或使用 express 中间件(如护照)运行 Node 来实现。
-
我认为问题不在于授权。因为 /user 和 /user.html 不一样。用户可以在工具栏中键入 html 页面的名称并再次到达那里。因为服务器控制的是 /user,而不是 /user.html。
标签: javascript html node.js express public