Flask学习-前言

前言

使用Flask断断续续加起来快一年了,但是一直没有从源码层去了解其实现原理。加上自己python基础不扎实,所以准备从看一个开源项目开始,希望能够从中窥得武功精髓,让自己水平更上一层楼。

Flask

Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架。Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。

注意:将模板和数据渲染是后端进行的操作,渲染完成后,再传给前端浏览器进行展示,这个比较重要。

基于如上背景知识,这里不只是研究了flask的源码,也会把涉及到的werkzeug库的源码,以及werkzeug库使用到的python基本库的源码列出来,力求能够把整个逻辑给陈列清楚。

涉及知识

主要涉及的内容有:

1、WSGI(web server和Flask application之间的接口规范)
2、Flask 应用启动过程(server启动)
3、请求处理过程(client请求)

更加细化的知识点,可能会有:
1、视图函数(views)
2、URL 的映射(router)

3、上下文(应用上下文【current_app和g】和请求上下文【request和session】)

posted @ 2018-06-17 18:14  skyflask  阅读(312)  评论(0编辑  收藏  举报