1. 程式人生 > 其它 >Python FLASK學習筆記

Python FLASK學習筆記

技術標籤:Python

1、在使用 Flask 給客戶端返回 JSON 資料時,可以直接使用jsonify生成一個 JSON 的響應;

@app.route('/demo')
def demo():
    json_dict = {
        "user_id": 10,
        "user_name": "laowang"
    }
    return jsonify(json_dict)
注:不推薦使用 json.dumps 轉成 JSON 字串直接返回,因為返回的資料要符合 HTTP 協議規範,如果是 JSON 需要指定 content-type:application/json

2、重定向

  • 直接填寫自己 url 路徑
  • 使用 url_for 生成指定檢視函式所對應的 url

@app.route('/demo1')
def demo1():
return 'demo1'

# 重定向,採用url_for生成demo1對應的url
@app.route('/demo2')
def demo2():
return redirect(url_for('demo1'))

3、flask上下文引數

(1)請求上下文(request context)

  請求上下文物件有:request、session

    • request
      • 封裝了HTTP請求的內容,針對的是http請求。舉例:user = request.args.get('user'),獲取的是get請求的引數。
    • session
      • 用來記錄請求會話中的資訊,針對的是使用者資訊。舉例:session['name'] = user.id,可以記錄使用者資訊。還可以通過session.get('name')獲取使用者資訊。
  • 請求上下文:儲存了客戶端和伺服器互動的資料
  • 應用上下文:flask 應用程式執行過程中,儲存的一些配置資訊,比如程式名、資料庫連線、應用資訊等

Cookie使用

Cookie:指某些網站為了辨別使用者身份、進行會話跟蹤而儲存在使用者本地的資料(通常經過加密)。

  • 複數形式Cookies。
  • Cookie是由伺服器端生成,傳送給客戶端瀏覽器,瀏覽器會將Cookie的key/value儲存,下次請求同一網站時就傳送該Cookie給伺服器(前提是瀏覽器設定為啟用cookie)。
  • Cookie的key/value可以由伺服器端自己定義。

4、資料庫操作

SQLAlchemy是python中最著名的ORM(Object Relationship Mapping)框架:

https://www.cnblogs.com/wj-1314/p/10627828.html

flask-sqlalchemy用法詳解