教程:使用 Express.js 和 Firebase 构建实时后端服务

在网站开发中,后端服务是非常重要的一部分。Express.js 是一个流行的 Node.js Web 框架,而 Firebase 提供实时数据库和身份验证服务。本教程将教你如何使用 Express.js 和 Firebase 构建实时后端服务。

准备工作

在开始之前,你需要安装 Node.js 和 Firebase。其中,Firebase 是基于 Google Cloud Platform 的一种云服务,提供实时数据库和身份验证服务。它非常易于使用,允许开发人员快速构建高性能的应用程序后端。

  1. 下载并安装 Node.js:https://nodejs.org/
  2. 创建一个 Firebase 账号,并在控制台中创建一个新项目:https://firebase.google.com/
  3. 安装 Firebase CLI:npm install -g firebase-tools
  4. 在终端中登录 Firebase CLI:firebase login

创建 Express.js 应用程序

我们将使用 Express.js 来构建后端服务。在命令行中,执行以下命令:

  1. 创建一个新目录:mkdir my-express-app
  2. 进入该目录:cd my-express-app
  3. 初始化 Node.js 项目:npm init
  4. 安装 Express.js:npm install express --save
  5. 创建 index.js 文件,并添加以下代码:
  1. 运行应用程序:node index.js
  2. 在浏览器中访问 http://localhost:3000,应该会看到 Hello World! 的输出。

现在我们已经创建了一个最基本的 Express.js 应用程序。接下来,我们将使用 Firebase 实现实时后端服务。

集成 Firebase 实时数据库

Firebase 提供了实时数据库服务,允许我们实时同步数据。在 Firebase 控制台中,创建一个新的实时数据库,并从控制台中获得项目的凭据(Credentials)。

  1. 将 Firebase 密钥(Credentials)保存到本地,如 firebase-credentials.json
  2. 安装 Firebase Admin SDK:npm install firebase-admin --save
  3. 创建 firebase.js 文件,并添加以下代码:

<my-project-id> 替换为 Firebase 项目的 ID。

现在我们已经创建了一个 Firebase 实例。接下来,我们将使用实时数据库来替代 Express.js 应用程序的 / 端点。

现在,当你访问 http://localhost:3000,应该会看到 messages 节点的结果输出。

推送新的数据

我们可以使用 Firebase 的 REST API 将新数据添加到实时数据库。因此,在客户端发送 HTTP POST 请求时,我们可以将请求体添加到数据库中。

身份验证

现在我们已经实现了实时后端服务,但是任何人都可以通过 HTTP POST 请求向我们的数据库中添加数据。为了解决这个问题,我们可以使用 Firebase Authentication 来验证身份。

在控制台中启用身份验证,并添加一个用户。在客户端发送请求时,将 ID Token 添加到 HTTP 请求头中,然后在服务器端验证该 Token。

现在,只有已经登录的用户才能向实时数据库添加数据,并且只能查看他们自己发送的数据。

总结

本教程中,我们介绍了如何使用 Express.js 和 Firebase 构建实时后端服务。我们从最基本的 Express.js 应用程序开始,演示了如何使用 Firebase 实时数据库以及身份验证服务。在此基础上,你可以构建更高级的后端服务,例如使用 Firestore 和 Cloud Functions 进行更高级的数据处理和操作。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/652cf60d7d4982a6ebe7955a


纠错
反馈