簡體   English   中英

用於Python Flask-RESTful的RequestParser中的正則表達式

[英]Regex in RequestParser for Python Flask-RESTful

想知道在Python Flask-RESTful中是否有可能在解析參數時使用正則表達式?

例如,根據有關多個值文檔 ,我在API中期望有以下參數:

parser.add_argument('fq', type=str, action='append', help='expecting filter query (fq) (multiple)')

從描述和參數可以明顯看出,該字段可以重復。 不幸的是,我正在使用PHP庫(即通過Guzzle的 http_build_query )以以下形式返回重復值:

?fq[0]=foo&fq[1]=bar&fq[2]=baz

由於要解析的fq參數數量未知,因此能夠定義正則表達式解析器非常有價值,類似於:

parser.add_argument('(fq)\[[0-9]+\]', type=str, action='append', help='expecting filter query (fq) (multiple)')

它將捕獲任何形式為fq[#] ,刪除帶括號的[]后綴,並將所有這些內容附加到args詞典中的fq列表中。

Flask-RESTful有可能嗎? 我沒有在文檔中看到任何內容,只保留了一些有關可能遷移到棉花糖之類的評論。

您可以使用以下代碼來檢查正則表達式的輸入:

from flask_restful import inputs
...
.....
parser.add_argument('fq', type=inputs.regex('^[0-9]+$'), action='append', help='expecting filter query (fq) (multiple)')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM