美文网首页Node.js
Express(中间件)

Express(中间件)

作者: 余生筑 | 来源:发表于2017-11-24 16:32 被阅读11次
  • 中间件的作用是实现路径与函数的映射
  • 中间件依据next实现跳转
  • 当next()有参数时
    如果当前中间件类型为express.Router();,则路由中断
    如果当前中间件为express(),则转到负责错误处理的中间件
  • 当next()无参数时,默认转到按照文档顺序的下一中间件
  • 最后一个中间件必须含res.end()

中间件种类

  • 普通中间件
    函数参数在路由符合当前url时被调用
app.use(‘/xxx’,(res,req,next)=>{
next()
})
  • 错误处理中间件
    当某个含next(error)中间件执行后,错误处理中间件被触发
app.use(‘/xxx’,(err,res,req,next)=>{
res.end(err)
})
  • 路由中间件
    路由中间件的目的是为了实现:不同路由下能调用不同的函数
    假如我想实现以下功能
   localhost:8888/index/               网站首页
   localhost:8888/customer/login 实现用户登录
   localhost:8888/customer/out    实现用户退出登录

可以这么写
app.js

const express = require('express')
const http = require('http')
var app = express()
const bodyParser = require('body-parser')
var index=require('./middlewares/index');
var customer=require('./middlewares/customer');

app.use('/',index)
app.use('/customer',customer)
app.use( function (req, res, next) {
    res.end();
  });

const server = http.createServer(app);

server.listen('8888');

index.js

const express = require('express')
const router = express.Router();

var index = (res, req, next) => {
    console.log('首页')
    next()
}
router.use('/',index);//这里等效于router.use(index);因为'/'等效于''

module.exports = router;

customer.js

const express = require('express')
const router = express.Router();


var login = (res, req, next) => {
    console.log('登录')
    next()
}

var out = (res, req, next) => {
    console.log('退出登录')
    next()
}


router.use('/login',login)
router.use('/out',out)

module.exports = router;

相关文章

  • Express中间件

    Express框架是由路由和中间件构成的一个web开发框架。 1. Express 中间件 中间件是Express...

  • day07-node-中间件

    案例:结构: Express中的中间件: 中间件:处理请求的,本质就是个函数 在 Express 中,对中间件有几...

  • koa.js的使用(koa2)

    koa与Express简单比较Express connect 中间件 封装了 路由、视图,koa co中间件 不包...

  • Express

    Express express与ejs 静态服务 中间件 第三方中间件 Cookie Session expres...

  • 跟我一起学Express之session、redis、登录验证

    上节我们说到,express中间件,并简单实现了我们自己的中间件,按照小编自己的理解 express就是靠中间件为...

  • Express API 总结

    1、express 相关 API: express.json(options)这是Express中内置的中间件功能...

  • 访问静态文件 static-file 中间件

    作为express 中间件使用

  • 模板

    express: web 框架 express-session: session 中间件 connect-m...

  • express middleware的使用

    更新中~ express 中间件 中间件的作用一般是为了实现业务的解耦,提供访问的接口。在express中,中间件...

  • Node之中间件

    中间件概述 Express框架中一个非常重要的概念——中间件。在Express框架中,允许通过中间件的使用来调用各...

网友评论

    本文标题:Express(中间件)

    本文链接:https://www.haomeiwen.com/subject/ufbxbxtx.html