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

ops/2024/12/23 6:42:07/

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

 

 

 


http://www.ppmy.cn/ops/144243.html

相关文章

游戏网站大全

http://piano.ssjjss.com/ 钢琴模拟器 https://gangqin.bmcx.com/?tdsourcetags_pcqq_aiomsg#/ 在线钢琴 https://www.gushiwen.cn/ 古诗文; https://www.bilibili.com/video/BV1UEWpeaEQK/ https://bouncyballs.org/ 掉落的球球 https://fakeupdate.net/ 假装升级界面 ht…

Java图片拼接

最近遇到一个挺离谱的功能,某个表单只让上传一张图,多图上传会使导出失败。跟开发沟通后表示,这个问题处理不了。我... 遂自己思考,能否以曲线救国的方式拯救一下,即不伤及代码之根本,又能解决燃眉之急。灵…

使用Python实现量子计算算法开发:探索计算的未来

量子计算作为一种全新的计算范式,正在逐步改变我们的计算方式。与经典计算机依赖比特(bits)进行信息处理不同,量子计算机使用量子比特(qubits)进行计算,这使得量子计算在处理某些复杂问题上具有…

5G 模组 RG500Q常用AT命令

5G 模组 RG500Q常用AT命令 5G 模组 RG500Q常用AT命令 at ATQNWPREFCFG\"mode_pref\",nr5g && sleep 1 at ATQNWPREFCFG\"nr5g_band\",79 && sleep 1 at atqnwlock\"commo…

数字化制造新生态:共话无代码+AI落地实践

在数字化浪潮席卷各行各业的今天,制造业正迎来前所未有的变革机遇。 如何借助数字化工具实现降本增效? 如何通过技术革新打破传统经营管理的瓶颈? 来自轻流、明洋灵动、酷家乐等企业的多位专家于12月13日,在由轻流与明洋数据联…

mongodb应用心得

基于springboot做mysql业务基础数据分析到mongodb文档库 索引分析 查看当前集合索引:db.collection.getIndexes() explain 方法查看是如何执行的:db.users.find({ name: “John” }).sort({ age: -1 }).explain(“executionStats”) 参数指标&#xff1…

从零开始学TiDB(6)深入学习Placement Driver(PD)

一.PD整体架构 PD的功能: 元数据的存储(解决执行计划如何得知去哪个region中获取数据)全局时钟:查询开始时间,事务开始,结束的时间。分配全局ID和事务ID对region进行调度(热点region的调度处理&…

【力扣算法】203.移除链表元素

在对链表进行操作的时候,可以考虑添加虚拟头结点 1. 虚拟头结点 设置虚拟头结点,让头结点的next指向head class Solution{public ListNode removeElements(ListNode head,int val){ListNode pre new ListNode();pre.next head;ListNode index pre;w…