您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)flask接受不同post請求的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
一般來說,傳遞請求參數(shù)的方式有兩種,一是打包成 JSON 之后再傳遞,二是直接放進 URL 進行傳遞 。對于第一種方式,一般用 POST 請求來傳遞參數(shù),然后用 FLASK 中 request 模塊的 get_json() 方法獲取參數(shù)。而對于第二種方式,一般用 GET 請求傳遞參數(shù),然后從 request.args 中用 get() 方法獲取參數(shù),不過需要說明的是用 POST 請求也可以通過 URL 的方式傳遞參數(shù),而且獲取參數(shù)的方式與 GET 請求相同。下面用代碼來說明獲取參數(shù)的過程。
1. 獲取 POST 請求參數(shù)
from flask import request, jsonify @app.route('/', methods = ["POST"]) def post_data(): # 假設(shè)有如下 JSON 數(shù)據(jù) #{"obj": [{"name":"John","age":"20"}] } # 方法一 data = request.get_json() # 獲取 JSON 數(shù)據(jù) data = pd.DataFrame(data["obj"]) # 獲取參數(shù)并轉(zhuǎn)變?yōu)?nbsp;DataFrame 結(jié)構(gòu) # 方法二 # data = request.json # 獲取 JOSN 數(shù)據(jù) # data = data.get('obj') # 以字典形式獲取參數(shù) # 經(jīng)過處理之后得到要傳回的數(shù)據(jù) res = some_function(data) # 將 DataFrame 數(shù)據(jù)再次打包為 JSON 并傳回 # 方法一 res = '{{"obj": {} }}'.format(res.to_json(orient = "records", force_ascii = False)) # 方法二 # res = jsonify({"obj":res.to_json(orient = "records", force_ascii = False)}) return res
2. 獲取 GET 請求參數(shù)
@app.route('/', methods = ["GET","POST"]) # GET 和 POST 都可以 def get_data(): # 假設(shè)有如下 URL # http://10.8.54.48:5000/index?name=john&age=20 #可以通過 request 的 args 屬性來獲取參數(shù) name = request.args.get("name") age = request.args.get("startDate") # 經(jīng)過處理之后得到要傳回的數(shù)據(jù) res= some_function(name, age) # 將數(shù)據(jù)再次打包為 JSON 并傳回 resp = '{{"obj": {} }}'.format(res.to_json(orient = "records", force_ascii = False)) return resp
感謝各位的閱讀!關(guān)于flask接受不同post請求的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。