Django中间件的总结

一、中间件

--中间件是一个轻量级、底层的插件系统,可以加入Django的请求和响应过程,修改Django的输入和输出

--每一个中间件组件是一个独立的Python类,可以定义下面方法中的一个和多个

   --__init__:无需要任何参数,服务器响应的第一个请求的时候调用一次,用于确定是否启用当前的中间件

   --process_request(request):执行视图之前被调用,在每个请求上调用,返回None或 HttpResponse对象

   --process_view(request,view_func,view_args,view_kwargs):调用视图函数之前被调用,在每个请求上被调用,返回None或HtppResponse对象

   --process_template_response(request,response):在视图刚好执行完毕之后被调用,再每一个请求上调用,返回实现了render方法的响应对象

   --process_response(request,response):所有响应返回浏览器之前被调用,在每一个请求上调用,返回HttpResponse对象

   --process_exception(request,response,exception):当视图抛出异常是调用,在每个请求上调用,返回一个HttpResponse对象   

    a、中间件是什么?

           --中间件是一个类

    b、返回值注意是什么?

           --无返回值:继续执行后续函数中间件和视图函数

           --有返回值:有返回值执行process_response和上面的response

   c、中间件做过什么:

           --用户登录

           --日志记录

           --权限管理

           --session

           --csrf   

                process_view

   d、中间件和装饰器的区别

           --中间件用于批量操作,装饰器用于单个

 

 

 

        

posted @ 2018-03-05 12:55  孟庆健  阅读(387)  评论(0编辑  收藏  举报