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

相关推荐
叼烟扛炮6 小时前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
.痞老板.8 小时前
mysql初阶--数据库基础
数据库·mysql
城北徐宫9 小时前
MySQL约束条件一览
数据库·mysql
ClouGence11 小时前
数据库变更审批困局,被这个开源工具解决了
数据库·开源
TDengine (老段)12 小时前
TDengine IDMP 十大实用功能(9)
大数据·数据库·人工智能·物联网·时序数据库·tdengine·idmp
starrocks_stella13 小时前
EMR Serverless StarRocks Object Table:用 SQL 连接 OSS 文件与多模态 AI
数据库
这个DBA有点耶13 小时前
以为自增ID只是有空洞?聊聊双主架构下无声的“数据覆盖”
数据库·mysql·dba
钱栈up14 小时前
内网全断,怎么核实高炉和烧结系统的数据库对接信息
数据库
weavecodes14 小时前
双层缓存与权限实时生效:织码在线教育系统的 Caffeine + Redis 设计
数据库
bksczm14 小时前
InnoDB 页结构详解:页类型、页头页尾、数据行与页目录
数据库·mysql