260615PM

配置1

找到server的终端

执行npm install nodemon,可帮助冷启动,热重载热更新

修改package.json中的"start": "node ./bin/www"为"start": "nodemon ./bin/www"

然后在server终端运行npm start

配置2

在serve下创建config.js

js 复制代码
const config={
    mySql:{
        host:"localhost",
        user:"root",
        password:"密码",
        database:"news"
    }
}

if(process.env.NODE_ENV=="production"){
    config.mySql={
        host:"127.0.0.1",
        user:"root",
        password:"密码",
        database:"news"
    }
}

module.exports=config

在serve下创建db.js

用于创建数据池,并创建一条数据链

js 复制代码
const mysql=require('mysql2')
const config=require("./config")

// 创建数据池
let pool = mysql.createPool({
    host:config.mySql.host,
    user:config.mySql.user,
    password:config.mySql.password,
    database:config.mySql.database
})

// es6 封装公共请求方法
function query(sql){
    return new Promise((resolve,reject)=>{
        pool.getConnection((err,connection)=>{
            if(err) return reject(err)
                connection.query(sql,(err,data)=>{
                    if(err) return reject(err)
                    resolve(data)
                    //关闭这条数据链
                    connection.release()
                })
        })
    })
}

module.exports={
    query
}

把app.js里面的var全部改成const

新增登录板块

登录

登录是一个查询操作

在server/router下新增login.js文件

结构赋值{userName,password}

js 复制代码

在app.js里可以添加和"登录"有关的

js 复制代码
const loginRouter = require('./routes/login');
// ...省略
app.use('/login', loginRouter);

在statusmessages.js里面进行状态码常量管理

统一管理接口返回 code(状态码)和 msg(提示文字)

js 复制代码
const ERROR = {
    code: 188,
    msg:"失败"
}
const ERROR_PARAMS={
    code: 199,
    msg:"缺少必要参数"
}
const ERROR_EXIST={
    code: 201,
    msg:"用户已存在"
}
const ERROR_NOUSER={
    code: 202,
    msg:"用户不存在"
}
const ERROR_PASSWORD={
    code: 203,
    msg:"用户名密码错误"
}
const SUCCESS={
    code: 200,
    msg:"成功"
}
module.exports={
    ERROR,
    ERROR_EXIST,
    ERROR_NOUSER,
    ERROR_PARAMS,
    ERROR_PASSWORD,
    SUCCESS
}

使用postman

测试http://localhost:3000/login

相关推荐
777VG1 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
aax12134532 小时前
VOC 集群治理工程实操|美丽蓝天绿岛项目 RTO 工艺选型、管控方案与申报要
大数据·数据库·人工智能
IvorySQL2 小时前
PG 日报|优化缓冲区批量扫描,降低多套接字并发竞争
数据库·人工智能·postgresql·开源·区块链
这个DBA有点耶2 小时前
交易型数据库是什么?OLTP核心能力与2026选型指南
数据库·数据仓库·sql·database·数据库架构·olap·dba
大熊猫侯佩2 小时前
WWDC26 全新 SwiftData 的 .codable 宏选项:它不是泛型专用胶水
数据库·swift·apple
童谣15 小时前
越华环保集团市级统筹申报数字化中台:政策校验与减排仿真一体化架构
数据库·架构
制造数据与AI践行者老蒋5 小时前
离谱!PromptTemplate 遇上 JSON,花括号直接引发解析战争
数据库·microsoft·json
中微极客5 小时前
用LangChain 0.3构建生产级RAG与Agent:从API集成到Streamlit部署
数据库·人工智能·langchain
吴声子夜歌5 小时前
MongoDB 4.x——并发优化
数据库·mongodb
不如语冰6 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python