Api 使用适当的消息分析Restful请求
我使用Flask Restful的reqparse接口来解析请求参数。我有日期字段,它是必需的,并且我必须对其执行验证Api 使用适当的消息分析Restful请求,api,rest,flask,flask-restful,Api,Rest,Flask,Flask Restful,我使用Flask Restful的reqparse接口来解析请求参数。我有日期字段,它是必需的,并且我必须对其执行验证 parser = reqparse.RequestParser(bundle_errors=True) parser.add_argument('date',type=date_type,required=True,help='date cannot be blank') args = parser.parse_args() 我已经定义了自定义日期类型,用于验证可以使用pyt
parser = reqparse.RequestParser(bundle_errors=True)
parser.add_argument('date',type=date_type,required=True,help='date cannot be blank')
args = parser.parse_args()
我已经定义了自定义日期类型,用于验证可以使用python dateutil包将字符串解析为date
def date_type(date_str):
try:
return parser.parse(date_str)
except:
raise ValueError('Not a valid date format')
我想返回适当的消息,如果date字段丢失或date不是有效的日期,但使用add_参数,我只允许有一条帮助消息。
add_参数是否允许在缺少和无效数据类型事件的情况下有不同的消息。Hie
我想你应该试试
它将处理无效或丢失的数据
而且文档中还声明,ReqParse将在即将发布的版本中删除。因此,正如flask restful文档所建议的,我必须使用webargs解析我的请求,在幕后它使用棉花糖。 下面是一个示例,它将帮助任何希望使用它的人
from webargs import fields
from webargs.flaskparser import use_args
user_args={
'user_id':fields.Int(required=True),
'date':fields.DateTime(required=True)),
'start_date':fields.DateTime(required=False)
}
class User(Resource):
#method_decorators = [requires_auth]
@use_args(user_args)
def get(self,args):
return {"hello":"world"}
我知道,在reqparse中也可以这样做吗。另外,flask棉花糖文档不包含任何请求解析示例。您应该在flask棉花糖文档中查看该示例。