七、express 重构代码

55 阅读1分钟

express 下载和安装

  1. 安装脚手架 express-generator
        npm install express-generator
        express blog-express
        cd blog-express
        npm i
        npm start
        npm i nodemon cross-env --save-dev
    "dev":"cross-env NODE_ENV=dev nodemon ./bin/www"
    npm run dev
  1. app.js 分析

插件

cookie-parser

image.png

morgan
image.png

req.body 拿取 post 请求的 data image.png

express 中间件原理

app.use 中间件 ,next 参数

image.png

image.png

image.png

image.png

express 中间件原理

express 登录

  1. express-session 和 connect-redis redis
  2. req.session 保存登录信息,登录校验做成 express 中间件

image.png

  const session = require('express-session');
  const RedisStore = require('connect-redis')(session);
  const redisClient = require('./db/redis');
  const sessionStore = new RedisStore({
      client:redisClient
  })
  app.use({
      secret:'WJioL#23123_',
      cookie:{
          path:'/',  //默认
          htttOnly:true, //默认
          maxAge:24*60*60 *1000
      },
      store:sessionStore
  })
  
  
  router.get('session-test',(req,res,next)=>{
      const session = req.session
      if(session.viewNum==null){
      session.viewNum=0
      }
      session.viewNum++;
      res.json({
          viewNum:session.viewNum
      })
  })

日志

image.png