djanao请求生命周期
- 浏览器发送请求到服务端
- 服务端的wsgi服务器接收到来自浏览器的请求, 对request做一些预处理, 把浏览器的请求信息(请求方式, 请求头, socket信息等)都封装在request对象.
- 中间件相当于Django的门卫, 能够对所有的请求做一个过滤和校验作用, 例如常见的csrf(跨站请求伪造)就可以通过Django的CSRF中间件来防止. 还有用户的请求频率控制等等都可以放在中间件来进行处理...
- url层是一个路由分发层, 可以根据来自用户的不同请求信息, 去执行相应的视图函数, 这个匹配规则可以是基于正则或是普通的文本匹配.
- 视图层是我们编写的核心业务逻辑层, 在Django中分为CBV视图和FBV视图两种. 处理业务逻辑的过程中可能会需要用到数据, 这就需要利用Django自带的orm系统来操作数据库, 拿到数据后可能还需要返回一个页面给前端, 这就需要利用到Django的模板渲染, 当模板渲染完毕后, 视图层功能结束, 返回对应Response信息
- 返回的Response信息会继续经过中间层来对Response进行最后的处理
- 最后由wsgi服务器对返回的信息包装成符合HTTP协议格式的数据返回到浏览器
posted @
2019-09-23 22:57
yscl
阅读(
176)
评论()
编辑
收藏
举报