1. 程式人生 > 實用技巧 >Flask-request物件

Flask-request物件

request

  • request 就是flask中代表當前請求的全域性物件,使用全域性 request物件可以訪問進入的請求資料。 Flask 處理進入的請求資料並允許你用這個全域性物件訪問它。如果你工作在多執行緒環境,Flask 內部保證你總會在當前執行緒上獲取正確的資料

常用屬性:

  • form:一個包含解析過的從 POST或 PUT請求傳送的表單物件的 MultiDict。請注意上傳的檔案不會在這裡,而是在files屬性中。
  • args:一個包含解析過的查詢字串( URL 中問號後的部分)內容的MultiDict。
  • values:一個包含 form和 args全部內容的 CombineMultiDict。
  • data:如果進入的請求資料是 Flask 不能處理的 mimetype ,資料將作為字串存於此。
  • stream:如果表單提交的資料沒有已知的 mimetype 編碼,為效能考慮,資料會不經修改儲存在這個流中。
  • files:一個包含 POST和 PUT請求中上傳的檔案的 MultiDict。每個檔案儲存為FileStorage物件,這個物件的save()方法可以把檔案儲存到檔案系統上。
  • cookies:一個包含請求中傳送的所有 cookie 內容的Dict。
  • headers:進入請求的頭存為一個類似字典的物件。
  • method:當前請求的 HTTP 方法 (POST,GET等)
  • environ
    :底層的 WSGI 環境。
  • url:記錄請求的URL地址string

示例:

儲存檔案到本地

from flask import request

@app.route('/upload', methods=['GET', 'POST'])
def upload_file():
    if request.method == 'POST':
        f = request.files['the_file']
        f.save('/var/www/uploads/uploaded_file.txt')
    ...