Flask源码阅读-第四篇(flask\app.py)
摘要:Flask源码(flask\app.py)flask.app该模块2000多行代码,主要完成应用的配置、初始化、蓝图注册、请求装饰器定义、应用的启动和监听,其中定义Flask类,且继承自基类_PackageBoundObject:
阅读全文
Flask源码阅读-第三篇(flask\_compat.py)
摘要:本模块主要是做了些兼容处理,主要从python2与其他版本进行比较。从这可以看出python2在编码等方面是有一定差异的,我们了解即可,以下一些关键语句就是对这种差异做兼容处理:
text_type = unicode
string_types = (str, unicode)
integer_types = (int, long)
cls.__str__ = lambda x: x.__unicode__().encode('utf-8')
阅读全文
Flask源码阅读-第二篇(flask\__init__.py)
摘要:flask\__init__.py本模块顾名思义,主要是做了大量的初始化导入工作,方便后面的直接调用,其中最核心的一句
jsonify = json.jsonify, 在后面的json和接口开发中用得比较多,对json格式的接口交互,
相对 Python的原生json方法,我个人比较推荐用flask的jsonify方法,其直接返回的content-type就是json
阅读全文
Flask源码阅读-第一篇(flask包下的__main__.py)
摘要:高级语言程序的入口一般都是main,因此品读flask源码也不例外。__main__模块文件直接位于flask包下,只有几行代码,其中最核心的是main(as_module=True)
阅读全文