express初探(二)

使用express搭建后端初始环境

安装express脚手架

npm install express-generator -g

通过express命令生成项目

express express-test

安装依赖

npm install

为了方便开发,防止代码重启

npm i nodemon cross-env --save-dev

在项目目录中的package.json文件中,找到配置项scripts,添加:

"dev":"cross-env NODE_ENV=dev nodemon ./bin/www"

启动项目

npm run dev

安装mysql,xss插件

npm i mysql xss --save

新建文件夹db,在其下新建mysql.js,内容示例

const mysql = require('mysql')
const { MYSQL_CONF } = require('../conf/db')

// 创建链接对象
const con = mysql.createConnection(MYSQL_CONF)

// 开始连接
con.connect()

// 统一执行 sql 的函数
function exec(sql) {
    const promise = new Promise((resolve, reject) => {
        con.query(sql, (err, result) => {
            if (err) {
                reject(err)
                return
            }
            resolve(result)
        })
    })
    return promise
}

module.exports = {
    exec
}

新建文件夹conf,该目录下新建db.js

注意:所有的配置要根据自己的配置重新设定

const env = process.env.NODE_ENV  // 环境参数

// 配置
let MYSQL_CONF
let REDIS_CONF

if (env === 'dev') {
   MYSQL_CONF = {
      host: 'localhost',
      user: 'root',
      password: '123',
      port: '3306',
      database: 'myblog'
   }

   // redis
   REDIS_CONF = {
      port: 6379,
      host: '127.0.0.1'
   }
}

if (env === 'production') {
   MYSQL_CONF = {
      host: 'localhost',
      user: 'root',
      password: '123',
      port: '3306',
      database: 'myblog'
   }

   // redis
   REDIS_CONF = {
      port: 6379,
      host: '127.0.0.1'
   }
}

module.exports = {
   MYSQL_CONF,
   REDIS_CONF
}

按照MVC分层,建立controller,model文件夹

express处理登录

使用express-sessionconnect-redis,简单方便

req.session保存登录信息,登录校验做成express中间件

posted @ 2020-04-19 23:22  cheeliu  阅读(122)  评论(0)    收藏  举报