使用node实现链接数据库并对数据库进行增删改查的后端接口

环境

node

npm

编辑器

vscode

项目配置

新建目录 用vscode打开

终端输入

npm init -y

npm install mysql

npm install express

代码

安装好之后的代码页面

新建

在根目录新建api.js文件

cpp 复制代码
const express = require('express');
const db = require('./db/index');
const app = express();
app.get('/users', (req, res) => {
  db.query('SELECT * FROM message', (error, results) => {
    if (error) {

      res.status(500).json({ error: `Failed to fetch users${error}` });
    } else {
      res.json({ success: true, data: results });
    }
  });
});
const port = 3001; // 你可以根据需要更改端口号

app.listen(port, () => {
  console.log(`Server is running on port ${port}`);
});

在根目录新建文件夹db 文件夹下新建index.js

cpp 复制代码
let mysql = require("mysql");

let db = mysql.createPool({
  host: "localhost", //数据库IP地址
  // host:"localhost",
  port: "3306",//数据库端口
  user: "root", //数据库登录账号
  password: "123456", //数据库登录密码
  database: "message", //要操作的数据库
});

module.exports = db;

目录结构为

测试接口

终端输入node api.js回车

可以看到我写的一个测试接口路径是/users

我的端口是3001

在浏览器输入http://localhost:3001/users访问接口

发现返回了数据

看看和数据库的一样不

postman测试

注意

你在运行端口的时候改代码是不生效的 没使用热部署类似的功能 所以要重新运行端口

相关推荐
吃糖的小孩1 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3502 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3502 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB3 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶3 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵3 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils3 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend4 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent