flask是一個輕量的web開發應用
示例開發一個小應用html
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'hello world' if __name__ == '__main__': app.run()
將它保存爲hello.py,而後用Python解釋器來運行,確保你的應用文件名不是flask.py,由於這將與flask自己衝突前端
python hello.py
- 用戶需求
- 競品分析
- 市場調研python
- 前端技術選型
- 後端技術選型
- 數據庫
- 業務框架
- 大數據處理相關:Hadoop Spark相關
- 在線直播相關:流技術mysql
- 先後端開發,測試(坑多)
- 先後端部署(坑多)
- 先後端升級(坑多)
- 業務框架git
- 生產上線
- 部署升級
- 峯值處理
- 成本優化
- 警報處理
github
$ sudo apt-get install python-virtualenv $ mkdir myproject $ cd myproject $ virtualenv venv New python executable in venv/bin/python Installing distribute............done. $ . venv/bin/activate $ pip install Flask
添加動態路由
咱們修改一下第一個示例redis
from flask import Flask from flask import request app = Flask(__name__) @app.route('/') def index(): user_agent = request.headers.get('User-Agent') return '<h1>hello 鏡心的小樹屋</h1><br><p>你的瀏覽器是 %s </p>' %user_agent if __name__ == '__main__': app.run(debug=True)
注意在這個視圖函數中咱們如何把 request 看成全局變量使用。事實上,request 不多是
全局變量。試想,在多線程服務器中,多個線程同時處理不一樣客戶端發送的不一樣請求時,
每一個線程看到的 request 對象必然不一樣。Falsk 使用上下文讓特定的變量在一個線程中全局
可訪問,與此同時卻不會干擾其餘線程。注意:
sql
線程是可單獨管理的最小指令集。進程常常使用多個活動線程,有時還會共 享內存或文件句柄等資源。多線程 Web 服務器會建立一個線程池,再從線 程池中選擇一個線程用於處理接收到的請求。
大多數程序都要進行用戶跟蹤。用戶鏈接程序時會進行身份認證,經過這一過程,讓程序
知道本身的身份。程序知道用戶是誰後,就能提供有針對性的體驗。最經常使用的認證方法要求用戶提供一個身份證實(用戶的電子郵件或用戶名)和一個密碼。
咱們將用到:mongodb
除了認證相關的包以外,本章還用到以下常規用途的擴展。:
生成requirements.txt文件: pip freeze > requirements.txt
安裝requirements.txt依賴: pip install -r requirements.txt
$ sudo apt-get install python-virtualenv $ mkdir myproject $ cd myproject $ virtualenv venv New python executable in venv/bin/python Installing distribute............done. $ . venv/bin/activate $ pip install Django
Flask Web開發:基於Python的Web應用開發實戰
Flask 開發文檔
eastossifrage/pyblog
https://blog.miguelgrinberg.c...