nodejs14

作者: 我_巨可爱 | 来源:发表于2017-10-30 16:50 被阅读0次

    中间件

    Express 是一个自身功能极简,完全是由路由和中间件构成一个的 web 开发框架:从本质上来说,一个 Express 应用就是在调用各种中间件。

    1. 中间件是一个函数,可以访问求对象(request object (req)), 响应对象(response object (res)),和web应用中处于请求-响应循环流程中的中间件
    2. 中间件的功能包括:
      • 修改请求和响应对象。
      • 终结请求-响应循环。
      • 调用堆栈中的下一个中间件。
    3. 如果当前中间件没有终结请求-响应循环,则必须调用 next() 方法将控制权交给下一个中间件,否则请求就会挂起。

    应用级中间件

    在app上使用use,post,get方法,就是应用级中间件,每个符合条件的http请求都会执行。符合条件,比如请求方式符合,比如挂载路径符合

    // 看清楚,什么才是中间件~~~~~~
    app.get('/user/:id', function (req, res, next) {
      if (req.params.id == 0) next('route');
      // 否则将控制权交给栈中下一个中间件
      else next(); //
    }, function (req, res, next) {
      res.render('regular');
    });
    
    1. 路由级中间件
    2. 内置中间件
    3. 在express中,如果某个请求没有被响应,显示Cant GET /a 或者其他

    路由级中间件

    • 使用express的router
    • router的get,post中的函数就是中间件
    • 也可以使用next方法

    错误处理中间件

    • 该函数有四个参数,err,req,res,next
    • 参数不可省略

    第三方中间件

    Express 已经不再依赖 Connect 了。除了 express.static, Express 以前内置的中间件现在已经全部单独作为模块安装使用了。

    // 先下载中间件
    var express = require('express');
    var app = express();
    var cookieParser = require('cookie-parser');
    
    // 加载用于解析 cookie 的中间件
    app.use(cookieParser());
    

    post和get请求

    • post请求可能过长,分成data和end两个事件
    • get方式的提交,也能触发post方法的end事件

    相关文章

      网友评论

          本文标题:nodejs14

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