我是纯新手,请教node.js的js的文件应该放在哪

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我是纯新手,请教node.js的js的文件应该放在哪相关的知识,希望对你有一定的参考价值。

比较符合大众规范的方法是 建立一个叫node_modules文件夹 以后安装的所有nodeJS 文件都放在里面 参考技术A 创建一个js 文件:放进去就好;每个项目对应一个Js 文件夹

Node.js 和 Express 中的数据库配置文件应该放在哪里?

【中文标题】Node.js 和 Express 中的数据库配置文件应该放在哪里?【英文标题】:Where should be located a database config file in Node.js and Express? 【发布时间】:2013-06-07 20:57:51 【问题描述】:

我现在正在学习 Node.js 和 Express,并且想使用 mysql 模块来呈现多个唯一页面,所以我不是在位于 routes 目录下的每个文件上写出 var connection=mysql.createConnection(user:'root', password: 'root'...etc) 行,而是当然最好只在每个路由文件上调用我自己的 mysql 配置文件。

但是,我应该将配置文件放在 Express 层次结构中的什么位置,以及如何从每个路由文件中调用该文件?我知道所有图像、样式表和 javascript 文件都应位于 public 目录下的每个特定目录中,但我不知道将要从路由文件访问的所有其他文件放在哪里。

我还想知道我的所有文件,从主app.jsroutes 目录下的文件,再到public 目录下的文件等等……一旦我公开这个Web 应用程序,用户是否可以找到我的所有文件在网上。如果是这种情况,那么我认为我不应该将数据库配置文件放在客户端可以访问的目录中......对吗?换句话说,我想确定哪些文件可以被客户端访问,哪些不能,以避免安全攻击。

【问题讨论】:

【参考方案1】:

回答您的第一个问题“将配置文件放在哪里?”: 这有点个人化。将它放在应用程序的根目录中。

config.js:

module.exports = 
  database:
    host: ""
    user: "..."
  

然后你将它包含在你的 app.js 中:

app.js:

...
config = require("./config");
db = config.database;
var connection=mysql.createConnection(user:db.user, ...)

请注意,您可能需要两个配置文件,一个在您的版本控制中,一个对机器私有。例如,不同的开发人员可能具有不同的数据库访问权限。但我认为你现在不必担心这个。

关于您的第二个问题“我的所有文件都是公开的吗?”: 不,只会提供您指定为静态的文件(使用 express 中间件)。

app.js:

...
// Exposes the public folder
app.use(express.static(__dirname + '/public'));

【讨论】:

如何在生产中处理这个问题?【参考方案2】:

你可以把它们放在你想要的任何地方。我通常会在项目根目录下创建一个/conf 目录,并将配置文件以 JSON 格式放入其中。

【讨论】:

以上是关于我是纯新手,请教node.js的js的文件应该放在哪的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 错误:连接 ECONNREFUSED

Node.js 等待循环中读取的所有文件

Node.js 等待循环中读取的所有文件

请教Div+CSS+JS树型菜单问题,我是新手,

AWS 创建新应用程序失败

node.js 中的同步 HTTP 请求