我正在使用node.js开发我的下一个Web应用程序。以ASP.net为例,无法从客户端浏览器访问.cs服务器端代码。我想知道的是,当我使用node.js开发我的应用程序时,server.js文件是否受到浏览我网站的人的保护。我的意思是我不希望我网站的访问者访问.js服务器端代码。我可以使用CHMOD文件权限保护这些文件,它会有帮助吗?
答案 0 :(得分:8)
如果你使用Express.js作为网络服务器,你有一个“公共”文件夹,你可以放置直接提供的静态文件。在该文件夹之外,您有其他兄弟文件夹,您可以将代码保存为“控制器”和“模型”。您无法通过Web浏览器导航到其中一个文件夹,因此它们无法访问,因为您的Web服务器的文档根目录是“公开的”。
project_root/
- app.js
- public/ <-- web root
- javascripts/
- stylesheets/
- images/
- some_static_page.html
- controllers/
- models/
- routes/
- views/
- node_modules/
答案 1 :(得分:1)
这不是因为Node.js使用Javascript,您的文件可以在浏览器中神奇地访问。在Node.js中,就像在Asp.net中一样,客户端和服务器端之间存在差异。如果您不向客户端提供Javascript文件,那么它们不会公开。