设置 Node 和 Express 后端
让我们学习如何为后端服务器设置环境。
让我们从使用 Node.js 和 Express 设置应用程序的后端开始。
如果你在本地机器上进行设置,首先需要安装 Node.js。请访问 https://nodejs.org/en/ 并下载适用于你操作系统的版本。
注意: 本课程无需在本地机器上安装。所有操作都可以在浏览器终端中完成。
安装过程非常简单。安装完 Node.js 后,在终端中运行以下命令:
1$ node -v
这将显示已安装的 Node.js 版本。
在终端中创建一个名为 movie-reviews 的文件夹。运行以下命令:
1$ mkdir movie-reviews && cd movie-reviews
在 movie-reviews 文件夹中,创建一个名为 backend 的文件夹。运行以下命令:
1$ mkdir backend && cd backend
在 backend 文件夹中,通过运行以下命令创建一个 package.json 文件:
1$ npm init
这会提示我们回答一系列关于项目的提问(如项目名称、作者和版本),以生成 package.json 文件。我们可以手动创建 package.json,但使用 npm init 命令可以节省一些时间。目前,只需对所有问题直接按回车键确认。完成此过程后,系统将自动生成 package.json 文件。
下面的终端执行了上述所有步骤,并显示初始的 package.json 文件:
注意:
package.json文件包含有关我们的 Node 项目的信息,例如名称、版本和作者。通过执行命令cat package.json,我们可以查看该文件的内容。
接下来,运行以下命令安装几个依赖项:
1$ npm install express cors mongodb dotenv
以下是这些依赖项的说明:
-
Express 是一个框架,作为 Node.js 网络服务器之上的轻量层,使开发 Node.js 网络应用更加容易。它简化了 Node.js 的 API,增加了有用的功能,通过中间件和路由帮助组织应用功能,等等。
-
CORS 代表 跨域资源共享。现代浏览器默认不允许前端客户端与 REST API 进行通信。它们会阻止来自客户端到服务器的请求,作为一种安全机制,确保浏览器端的 JavaScript 只能与自身允许的服务器通信,而不能与其他可能运行恶意代码的服务器通信。我们可以启用 CORS 检查来绕过这种安全限制。CORS 检查通过添加额外的 HTTP 头信息,告诉浏览器允许来自某一来源的网页访问具有不同来源的指定资源。
-
MongoDB 依赖项使我们能够与 MongoDB 数据库进行交互。
-
dotenv 依赖项从
.env文件中加载环境变量到process.env,而不是在开发机器上手动设置环境变量,从而简化开发流程。当我们稍后创建.env文件时,会更清楚这一点。
依赖项包含了所用包及其版本号。每次安装包时,npm 都会在 package.json 文件中记录相关信息,以便跟踪应用中使用的包。命令 npm install 会通过获取最新版本并将它们放入名为 node_modules 的文件夹中,将指定的包安装到我们的应用中。如果我们查看应用文件夹,会发现 node_modules 文件夹已经自动生成。这是项目自定义依赖项的存储位置。
如果我们打开并浏览 node_modules,应该能找到已安装的包。我们在 node_modules 中看到许多其他包的原因是,我们指定的包依赖于它们。文件 package-lock.json 会记录 Express 所有依赖项的版本。在完成上述依赖项的安装后,我们会发现 package.json 文件中新增了一个名为 dependencies 的属性。
使用 nodemon 实现自动服务器重启
最后,我们将安装一个名为 nodemon 的包,它能自动检测代码变化并重启 Node 服务器,这样我们就无需每次修改代码后手动停止和重新启动服务器。
注意: 上面的终端中使用
npm install -g nodemon命令安装了nodemon。