python框架之Flask
阿新 • • 發佈:2021-06-24
介紹:Flask是一個使用Python編寫的輕量級 Web 應用框架。其WSGI工具箱採用 Werkzeug ,模板引擎則使用 Jinja2 。
WSGl:Web Server Gateway Interface(Web伺服器閘道器介面,WSGI)已被用作Python Web應用程式開發的標準。WSGI是Web伺服器和Web應用程式之間通用介面的規範。
Werkzeug:它是一個WSGI工具包,它實現了請求,響應物件和實用函式。這使得能夠在其上構建web框架。Flask框架使用Werkzeug作為其基礎之一。
jinja2:jinja2是Python的一個流行的模板引擎。Web模板系統將模板與特定資料來源組合以呈現動態網頁。
第一個Flask案例:
第一步安裝Flask : pip install Flask
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World' if __name__ == '__main__': app.run()
啟動結果:
案例2 :通過session來管理登入資料
from flask import Flask from flask import render_template from flask importrequest from flask import make_response from flask import Flask, session, redirect, url_for, escape, request app = Flask(__name__) app.secret_key = 'fkdjsafjdkfdlkjfadskjfadskljdsfklj' @app.route('/') def index(): if 'username' in session: username = session['username'] return '登入使用者名稱是:' + username + '<br>' + "<b><a href = '/logout'>點選這裡登出</a></b>" return "您暫未登入, <br><a href = '/login'></b>" + "點選這裡登入</b></a>" @app.route('/login', methods=['GET', 'POST']) def login(): if request.method == 'POST': session['username'] = request.form['username'] return redirect(url_for('index')) return ''' <form action = "" method = "post"> <p><input type ="text" name ="username"/></p> <p><input type ="submit" value ="登入"/></p> </form> ''' @app.route('/logout') def logout(): session.pop('username', None) return redirect(url_for('index')) if __name__ == '__main__': app.run(debug=True)
效果圖1:
效果圖2:
效果3: