我正在使用Flask Rest-plus模型来验证POST负载,但是如果存在任何额外/未知字段,我希望模型出错。
正在使用的模型:
interface_config = api.model('Network Interface Validation', {
'gateway': fields.String(required=True, description='Gateway IP'),
'subnet': fields.String(required=True, description='Subnet IP'),
'netmask': fields.String(required=True, description='Netmask'),
'vlan_id': fields.Integer(required=True, description='VLAN ID'),
'type': fields.String(required=True, description='IP Version')
})
我想对包含以下内容的有效载荷进行错误处理
{
"gateway": "172.22.191.129",
"subnet": "172.22.191.128",
"netmask": "255.255.255.128",
"vlan_id": 887,
"type": "static",
"extra_key_name": "<some_str>"
}
答案 0 :(得分:0)
一个人可以使用marshal
中的flask_restplus
函数来重用模型定义,并跳过多余的字段。
from flask_restplus import marshal
marshal(api.payload, schema, skip_none=True)