我想將一個稱為manualFlask的變數傳遞給路由,然后該路由將根據 POST 表單資料中的值執行某些操作。但是表單資料被解釋為string在燒瓶中,即使我以字典的形式發送它。
這是代碼
@app.route("/result", methods= [ 'POST', 'GET'])
def result():
manual = request.form.get("manual")
if manual is None:
return "manual is required"
這是我發送資料的方式
r = requests.get('http://127.0.0.1:5000/result'
,data={manual':False})
我知道我可以做類似的事情;
if manual == 'True'
但我不想比較字串,我想以標準方式進行比較。
謝謝
uj5u.com熱心網友回復:
首先,做一個POST請求,而不是一個 GET:
r = requests.post('http://127.0.0.1:5000/result', json={'manual': False})
然后(未經測驗):
@app.route("/result", methods=['POST'])
def result():
json_data = flask.request.json
manual = json_data.get("manual")
if manual is None:
return "manual is required"
有關詳細資訊,請查看檔案:更復雜的 POST 請求。
請注意,使用 data 引數和 json 引數之間存在差異。需要注意的重要一點是 Content-Type 標頭的存在:
在請求中使用 json 引數會將標頭中的 Content-Type 更改為 application/json。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/392866.html
