美文网首页
【中间件】

【中间件】

作者: MarcoHorse | 来源:发表于2018-05-24 22:44 被阅读34次
  1. 什么是中间件

中间件,其实就是个钩子函数,相当于一个装饰器的作用,而django的中间件,主要是request和view之间,以及,view和response之间所做的处理。

  1. 怎么去写一个中间件

    其中自定义的django中间件里面包含着五个方法,里面包括

2.1 初始化方法__init__
2.2 process_request
2.3 process_view
2.4 process_response
2.5 process_error

由上图,我们可以看出,一个httprequest请求经过重重的中间件处理,最后生成一个response对象。

ps:中间件是有顺序的

  1. 怎么去写一个中间件

    3.1 声明一个中间件对象,可以是类也可以是函数

中间件类:
class UserMiddleWare(MiddlewareMixin):
  def __init__(self, get_response=None):
    self.get_response = get_response
    print("haha")
  def process_request(self, request):
    request.tag = "woshuai"
    print("老子很帅")

def UserMiddleWare(get_response): #定义一个用户自定义的UserMiddleware中间件,传一个系统函数    
  #get_response作为参数
  def middleware(request):
    print("老子很帅")
    response = get_response(request)
    # response中间件
    return response
  return middleware

3.2 配置中间件
在django项目的:MIDDLEWARE里面添加声明的中间类或者对象

3.3 运行效果如下:


相关文章

  • 翻译

    Laravel 的路由中间件 简介 创建中间件 注册中间件全局中间件为路由指定中间件中间件组 中间件参数 Term...

  • 中间件学习——具体分类

    中间件分为远程过程调用中间件、数据访问中间件、消息中间件、事务(交易)处理中间件、分布式对象中间件。 远程过程调用...

  • nodejs19-express中间件

    中间件 匹配路由之前和之后做的操作 应用级中间件 路由级中间件 错误处理中间件 内置中间件 第三方中间件 应用级中...

  • 4.3KOA 中间件模块化与中间件合成

    中间件模块化与中间件合成 一、中间件模块化 定义中间件模块 使用中间件模块 二、使用 koa-compose 模块...

  • 4.2KOA 中间件执行流程

    中间件执行流程 代码执行流程 中间件 1 开始执行中间件 2 开始执行执行内容中间件 2 结束执行中间件 1 结束...

  • 13.中间件和上下文处理器

    中间件 中间件的引入image.png django中的中间件django 中的中间件(middleware),在...

  • Express学习

    使用中间件 Express 应用可使用如下几种中间件:* 应用级中间件* 路由级中间件* 错误处理中间...

  • Express 中间件

    中间件的概念 什么是中间件 中间件(Middleware),特指业务流程的中间处理环节。 Express 中间件的...

  • Scrapy爬虫框架(七) ------ 下载中间件(Midd

    1. Spider 下载中间件(Middleware) Spider 中间件(Middleware) 下载器中间件...

  • laravel api设置Accept 头

    一、创建中间件设置Accept 头 生成中间件 设置Accept头 将中间件添加到api中间件组中

网友评论

      本文标题:【中间件】

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