def validate():
try:
data = request.json
except JSONDecodeError:
abort(400, 'Request data is not valid JSON')
# Validate
if data is None:
abort(400, 'JSON payload missing')
if 'data' not in data:
abort(400, 'Payload does not contain a "data" field')
try:
data = json.loads(data['data'])
except JSONDecodeError:
return invalid_payload('Data is not valid JSON')
if 'api' not in data:
return invalid_payload('Data does not contain an "api" field')
version = data['api']
if version not in SCHEMATA:
return invalid_payload('Unknown api version: "%s"' % version)
# Do validation of submitted endpoint
try:
valid, message = validation.validate(schema_path=SCHEMATA[version], data=data)
except SchemaError:
abort(500, 'Invalid schema on server! Please contact one of the admins.')
return {
'valid': valid,
'message': message,
}
评论列表
文章目录