zoukankan      html  css  js  c++  java
  • 配置Express中间件

    (1)回顾

    中间件本质为方法,将请求的处理过程分多个步骤实现,便于维护,且高效

      

      

       

       

    (2)Express官方文档

       查看Express官方文档对于中间件说明

      1、应用程序级别中间件

        

       2、路由级别中间件

        

      3、错误处理中间件(全局统一错误处理)

        

      4、内置中间件(Express框架内置的带有功能的中间件)

        

       5、第三方中间件

        

        官方推荐的第三方中间件资源

        

    node优势便在于DIY自定义(Do It Yourself)

    (3)错误处理中间件+404中间件

      1、在项目里添加404中间件

        

    注意位置:
        一定要放在挂载路由之后,如果之前所有的中间件都不匹配,则匹配该404中间件.如果404中间件放到挂载路由前,
      因为它属于万能中间件(应用程序级别)所以此时不管哪个请求都会匹配进来,再也无法往下走

        测试如下:当url错误时,跳到404页面

        

      2、在项目里添加全局错误处理中间件

        仔细分析router.js中的服务端错误处理代码,如下所示

        

         

         

         会发现所有的服务端错误处理基本一致,所以这里我们直接添加一个全局错误处理中间件。

        这里举个小案例:之前的错误处理重复性较高

        

         此时便可以通过错误中间件统一处理。但next()交出执行权限后,之后的中间件如果匹配,还会往里执行

        

        

    此时输出结果为/ 2,任然执行不到错误处理中间件。这时只需传入一个参数即可

        

         测试如下:

        

         项目修改如下:

        

         

    重点:记住加
    1、return防止代码向后执行
    2、中间件传入next参数

         直接将其他地方的服务器错误直接改为next(error),错误处理中间件。传入错误对象即可。

        

         或者也可以专门做一个错误处理页面

    .

  • 相关阅读:
    使用postman时请求参数中包含特殊字符问题,如加号传到后台变成空格
    okhttp3报错:java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
    Eclipse的知识积累
    partition 取数据中相同字段数据中取时间最大的一个值 并只保留一条
    理解Session缓存机制 操纵持久化对象
    Hibernate的检索策略
    LINQ介绍
    .Net 一对一的双向关联Map写法
    Hibernate多态查询
    NHibernate实战[转 2012 gogogo]
  • 原文地址:https://www.cnblogs.com/fightjianxian/p/12300823.html
Copyright © 2011-2022 走看看