Flask-Origin:Flask 0.1版本源碼註解

Flask-Origin:Flask 0.1版本源碼註解

來自專欄 Hello, Flask!52 人贊了文章

本項目是《Flask Web開發實戰》的衍生品。在本書第16章的前半部分,為了讓讀者快速對Flask的源碼結構建立一個初步的認識(以便閱讀後面的內容),推薦讀者閱讀0.1版本的源碼。

本項目對0.1版本Flask源碼(項目根目錄下的flask.py腳本)中的注釋和文檔字元串進行了翻譯,並在必要的地方添加了一些額外的註解,以便於閱讀和理解。

  • 項目地址:github.com/greyli/flask

歡迎fork項目進行補充和糾錯。

閱讀前的準備

為了更容易理解Flask的實現原理,你需要對WSGI協議以及HTTP協議有一些了解,建議先簡單瀏覽下面的基本知識:

  • PEP 0333和 PEP 3333(WSGI實現)
  • HTTP概述

進一步閱讀

Flask內部實現大量依賴於Werkzeug,包括請求和響應對象,路由匹配,URL生成等等,你可以閱讀Werkzeug的文檔來深入了解這些內容的具體實現。另外,如果你對模板渲染部分的內容感興趣,也可以考慮閱讀Jinja2文檔:

  • Werkzeug文檔
  • Jinja2文檔

注意:新版本的Werkzeug和Jinja2已經發生很大的變化,0.1版本的Flask對應的Werkzeug源碼版本為0.6.1,對應的Jinja2源碼版本為2.4。上述文檔鏈接分別為0.14和2.9版本,請謹慎參考。

推薦閱讀:

TiDB 源碼閱讀(十五) Sort Merge Join
不一樣的 React context
從Chrome源碼看audio/video流媒體實現一
JDK 源碼閱讀 : DirectByteBuffer
跋山涉水 —— 深入 Redis 字典遍歷

TAG:Flask | 源碼閱讀 | Python |