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

发布于:2024-12-19 ⋅ 阅读:(12) ⋅ 点赞:(0)

使用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": "test@example.com",
  "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 后端搭建。随着项目的进展,你可以逐步增加更多的功能和优化。

 

 

 


网站公告

今日签到

点亮在社区的每一天
去签到