flask-restful 提供了requestparser
類,用來幫助我們檢驗和轉換請求資料。
from flask_restful import reqparse
parser = reqparse.requestparser(
)parser.add_argument(
'rate'
,type
=int
,help
='rate cannot be converted'
, location=
'args'
)parser.add_argument(
'name'
)args = parser.parse_args(
)
使用步驟:
建立requestparser
物件
向requestparser
物件中新增需要檢驗或轉換的引數宣告
使用parse_args()
方法啟動檢驗處理
檢驗之後從檢驗結果中獲取引數時可按照字典操作或物件屬性操作
args.rate
或args[
'rate'
]
描述請求是否一定要攜帶對應引數,預設值為false
class
demoresource
(resource)
:def
get(self)
: rp = requestparser(
) rp.add_argument(
'a', required=
false
) args = rp.parse_args(
)return'.
format
(args.a)
}
引數檢驗錯誤時返回的錯誤描述資訊
rp.add_argument(
'a', required=
true
,help
='missing a param'
)
描述對於請求引數**現多個同名引數時的處理方式
rp.add_argument(
'a', required=
true
,help
='missing a param'
, action=
)
描述引數應該匹配的型別,可以使用python的標準資料型別string、int,也可使用flask-restful提供的檢驗方法,還可以自己定義
自定義
def
mobile
(mobile_str)
:"""
檢驗手機號格式
:param mobile_str: str 被檢驗字串
:return: mobile_str
"""if re.match(r'^1[3-9]\d$'
, mobile_str)
:return mobile_str
else
:raise valueerror(
'{} is not a valid mobile'
.format
(mobile_str)
)rp.add_argument(
'a',
type
=mobile)
描述引數應該在請求資料**現的位置
)也可指明多個位置
parser.add_argument(
'text'
, location=
['headers'
,'json'
])
Flask RESTful關於響應
flask restful 提供了marshal工具,用來幫助我們將資料序列化為特定格式的字典資料,以便作為檢視的返回值。from flask restful import resource,fields,marshal with resource fields class todo resourc...
flask restful學習筆記
restful api前端與後台進行通訊的一套規範,使用這套規範可以讓前後端開發變得更加輕鬆 協議 http 或 https 資料傳輸格式 json url連線 get 獲取 post 新建 eg 使用者註冊 put 更新 eg 要求客戶端提供所有資料 patch 更新區域性 delete 從伺服器...
flask restful使用講解
flask restful筆記 安裝 flask restful需要在flask 0.8以上的版本,在python2.6或者python3.3上執行。通過pip install flask restful即可安裝。基本使用 1.從 flask restful 中匯入 api 來建立乙個 api 物件...