存取 Flask 應用程式中的請求資料
使用 Flask 應用程式時,通常需要擷取從客戶端發送的資料。然而,存取這些資料有時會令人困惑,尤其是當 request.data 顯示為空時。
瞭解 HTTP 請求參數
為了處理傳入的 HTTP 請求,Flask 在請求物件上提供了幾個屬性:
-
request.args:查詢字串參數
-
request.form:來自 HTML 表單或 JavaScript的表單資料
-
request.files:上傳的檔案
-
request.values:合併參數和表單data
-
request.json
:解析的JSON資料
存取發布的資料
如果您希望透過POST 提交資料請求時,需要根據請求內容查閱對應的屬性類型:
-
HTML 表單(urlencoded)
: request.form-
JSON (application/json)
: request.json
request.data 故障排除
request.屬性通常包含原始請求正文,但如果滿足以下條件,則該屬性可能為空:
- 請求具有 Flask 無法處理的 MIME 類型。
- 資料不是 JSON -編碼。
- 資料未正確解析Flask.
範例
在下面的程式碼片段中,可以使用request.form.get 或request.form.getlist 來存取表單資料:
from flask import request
@app.route('/', methods=['GET', 'POST'])
def parse_request():
name = request.form.get('name')
emails = request.form.getlist('emails')
# Process the data further...
以上是如何正確存取 Flask 應用程式中的請求資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!