使用Node.js搭配express框架快速构建后端业务接口模块Demo

使用Node.js搭配express框架快速构建后端业务接口模块Demo!实际开发中,有很多项目,其实都是可以使用node.js来完成对接mysql数据库的,express确实使用起来非常简单,入手快,效率非常高。下面是一个简单的案例,帮助大家快速掌握了解,如何构建自己的后端管理模块。


1:

步骤 1:初始化项目
  1. 在命令行中进入你想要创建项目的文件夹,运行:

    复制代码
    mkdir my-express-backend
    cd my-express-backend
    npm init -y

    步骤 2:安装 Express

    安装 express 和其他必要的依赖:

    npm install express mysql2 body-parser cors

这个速度很快,几秒钟就可以按照完成了。非常快捷。


2:

  • express:核心框架
  • mysql2:连接 MySQL 数据库
  • body-parser:解析请求体,常用来解析 POST 请求的数据
  • cors:跨域资源共享,允许你的前端与后端进行跨域请求

步骤 3:创建 index.js 文件

在项目根目录下创建 index.js 文件,这是 Express 服务器的入口。

复制代码
touch index.js

步骤 4:编写 Express 服务器代码

打开 index.js 文件并写入以下代码:

复制代码
// 引入依赖
const express = require('express');
const mysql = require('mysql2');
const cors = require('cors');
const bodyParser = require('body-parser');

// 创建 Express 实例
const app = express();
const port = 3000;

// 允许跨域请求
app.use(cors());

// 解析 JSON 请求体
app.use(bodyParser.json());

// 创建数据库连接池
const db = mysql.createPool({
  host: 'localhost',     // 数据库主机
  user: 'root',          // 数据库用户名
  password: 'password',  // 数据库密码
  database: 'lost_and_found', // 数据库名称
});

// 测试数据库连接
db.getConnection((err, connection) => {
  if (err) {
    console.error('Database connection failed:', err.stack);
    return;
  }
  console.log('Connected to database as ID', connection.threadId);
  connection.release();
});

// 创建一个简单的 API 端口,返回 Hello World
app.get('/', (req, res) => {
  res.send('Hello World!');
});

// 获取当前数据库中所有帖子
app.get('/posts', (req, res) => {
  const query = 'SELECT * FROM posts';
  db.query(query, (err, results) => {
    if (err) {
      console.error('Error fetching posts:', err);
      return res.status(500).json({ message: 'Error fetching posts' });
    }
    res.json(results);
  });
});

// 获取帖子的数量
app.get('/posts/count', (req, res) => {
  const query = 'SELECT COUNT(*) AS count FROM posts';
  db.query(query, (err, results) => {
    if (err) {
      console.error('Error fetching posts count:', err);
      return res.status(500).json({ message: 'Error fetching posts count' });
    }
    res.json({ count: results[0].count });
  });
});

// 用户注册 API
app.post('/register', (req, res) => {
  const { username, email, password } = req.body;
  const query = 'INSERT INTO users (username, email, password) VALUES (?, ?, ?)';
  db.query(query, [username, email, password], (err, result) => {
    if (err) {
      console.error('Error registering user:', err);
      return res.status(500).json({ message: 'Error registering user' });
    }
    res.status(201).json({ message: 'User registered successfully' });
  });
});

// 启动服务器
app.listen(port, () => {
  console.log(`Server running on http://localhost:${port}`);
});

3. 启动 Express 后端服务器
复制代码
node index.js

在项目根目录下,执行以下命令启动服务器:执行这个指令,即可打开服务器端程序了。我们简单的测试一下,入下图所示:



说明,这个测试接口是我自己写的,地址,你可以自己改成自己喜欢的地址,自己测试。


4. 数据库设置

确保你已经在 MySQL 中创建了数据库和表,并配置好数据库连接。

创建数据库和表

假设你的数据库叫做 lost_and_found,你可以执行以下 SQL 来创建表:

复制代码
CREATE DATABASE lost_and_found;

USE lost_and_found;

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(255) NOT NULL,
  email VARCHAR(255) NOT NULL,
  password VARCHAR(255) NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE posts (
  id INT AUTO_INCREMENT PRIMARY KEY,
  user_id INT NOT NULL,
  title VARCHAR(255) NOT NULL,
  description TEXT NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  FOREIGN KEY (user_id) REFERENCES users(id)
);

5. 测试后端 API

在浏览器或者 Postman 中,你可以访问以下 URL 来测试后端功能:

  • http://localhost:3000/:测试是否能访问到 Hello World。
  • http://localhost:3000/posts:获取所有帖子数据。
  • http://localhost:3000/posts/count:获取帖子数量。

6. 使用 Postman 测试注册 API

你可以使用 Postman 测试用户注册接口。请求方法是 POST,URL 是 http://localhost:3000/register,请求体(Body)格式为 JSON:

复制代码
{
  "username": "testuser",
  "email": "[email protected]",
  "password": "testpassword"
}
7. 扩展功能

在完成基础的 Express 后端搭建后,你可以继续扩展功能,加入更多的 API 端点,例如:

  • 用户登录和身份验证(JWT)
  • 发布帖子、删除帖子等
  • 用户积分管理
  • 黑名单功能等

8. 部署到生产环境

当你完成本地开发和测试后,下一步就是将 Express 后端部署到生产环境。可以使用一些常见的部署方式,例如:

  • Heroku:一个简单的云平台服务,适合小型应用。
  • DigitalOcean、AWS EC2:适合需要更多控制的应用,可以配置自己的服务器。
  • Docker:如果你使用 Docker,可以将应用容器化并在任何支持 Docker 的平台上运行。


9. 总结
  1. 初始化项目 :使用 npm init 创建 package.json
  2. 安装依赖:安装 Express、MySQL 以及其他依赖。
  3. 编写服务器代码:创建 Express 实例,连接 MySQL,并定义 API。
  4. 测试后端功能:使用浏览器或 Postman 测试后端 API。
  5. 扩展功能:添加用户身份验证、发布帖子等功能。
  6. 部署到生产:使用 Heroku 或其他平台将你的应用部署到生产环境。

这样,你就完成了一个基本的 Express 后端搭建。随着项目的进展,你可以逐步增加更多的功能和优化。

相关推荐
名字越长技术越强11 小时前
Node.js学习
学习·node.js
知识分享小能手14 小时前
JavaScript学习教程,从入门到精通,Ajax与Node.js Web服务器开发全面指南(24)
开发语言·前端·javascript·学习·ajax·node.js·html5
dwqqw15 小时前
opencv图像库编程
前端·webpack·node.js
layman052817 小时前
node.js 实战——(fs模块 知识点学习)
javascript·node.js
本本啊18 小时前
node 启动本地应用程序并设置窗口大小和屏幕显示位置
前端·node.js
全栈派森19 小时前
Next15 + Prisma + Auth5 实战讲解
react.js·node.js·next.js
·薯条大王19 小时前
Node.js 开发用户登录功能(使用mysql实现)
数据库·mysql·node.js
新时代农民工--小明20 小时前
从0开始搭建一套工具函数库,发布npm,支持commonjs模块es模块和script引入使用
前端·javascript·typescript·npm·node.js
xx240620 小时前
Node.js简介(nvm使用)
node.js
泯泷1 天前
【SHA-2系列】SHA256 前端安全算法 技术实践
javascript·安全·node.js