setting中注册的middleware会将用户request的数据经过这些middlware中有process_request方法和process_response方法注册进入。
当用户的request进入view之前会将这些process_request通通调用一遍
如果用户post过来的是session_id那么我们的session middleware就会起作用。
会执行上面代码从request.cookies中获取到setting中设置的SESSION_COOKIE_NAME
这里仅仅是完成了把session放入request。这里的middleware和scrapy中的middlware是一样的
解读:
1、浏览器发起一个http 的请求,http 请求会通过Python的handler 序列化出一个httprequest 对象
2、经过request 的middleware(这些middleware就是我们seeting 里面设置的middleware)
3、只有重载了process_request才叫做 request middleware
这里面我们不一定只加工传过来的request,也可以直接返回,这话情况会直接返回,不会进入view 中
全局拦截器,拦截用户的浏览器是否是chrome 浏览器 就可以在middleware 里面判断浏览器的版本或者型号是否是chome ,不是的话 就直接rerurn response
。。。。