创建一个Api接口 我们需要Mysql数据库和 express对外提供数据
思路:
1.先在npm init -y 初始化一个package.json管理工具
在package.json中声明"type":"module"

2.安装第三方的依赖包
npm install express
npm install mysql2

3.创建基本的web服务器

import express from "express";
const app = express()
app.listen(80, () => {
console.log('server is running at http://127.0.0.1');
})
4.创建数据库操作模块

以我这个数据库为例

import mysql from 'mysql2'
const pool = mysql.createPool({
//这个host和port 一般都是固定的
host: '127.0.0.1',
port: 3306,
//下面这些 是这个host的port中的数据库名称和账号 密码
database: 'my_db_',
user: 'root',
password: 'admin123'
})
export default pool.promise()
//经过这样的操作我们就链接了本地的数据库
因为这个mysql所创建的是一个promise对象 因此 我们将这个promise 暴露出去
然后 就可以在此基础上 查数据了
5.操作一下数据库 将想要的拿出去的数据 给找到 用es6的语法 选择性暴露出去

import db from '../db/index.js'
export async function getAlluser(req, res) {
try {
const [rows] = await db.query('select * from users')
console.log(rows);
res.send({ status: 0, message: '获取用户列表数据成功', data: rows })
} catch (e) {
res.send({ status: 1, massage: '获取用户列表失败', desc: e.message })
}
}
这样 我们就将拿到的数据暴露出去了
6.创建路由调用 接收数据

import express from 'express';
import { getAlluser } from '../controller/user.ctrl.js'
const router = new express.Router()
router.get('/user', getAlluser)
export default router
7.重新在app.js中挂载数据
import express from "express";
import userRouter from '../Router/user_router.js'
const app = express()
app.use('/api', userRouter)
app.listen(80, () => {
console.log('server is running at http://127.0.0.1');
})
8.运行app.js 然后 在postman中测试

本文详细介绍了如何利用Express.js和MySQL数据库创建一个API接口。首先通过npm初始化项目,接着安装Express和mysql2库。然后创建基本的Web服务器,并建立数据库连接。在数据库操作模块中,我们连接到本地数据库并暴露Promise对象。接着实现了一个获取所有用户数据的异步函数,并在路由中调用。最后,在app.js中挂载路由并启动服务器。在Postman中测试,成功获取用户列表数据。
1870

被折叠的 条评论
为什么被折叠?



