如何解决如何替换 Zeep 的默认布尔序列化器?
当我序列化一个布尔值时,Zeep 返回 "true"
/"false"
(按照 xsd.types.Boolean
类)。
我想将其更改为返回 "1"
/"0"
,因为我使用的 API 只接受这些值。
如何替换默认的布尔序列化器?
解决方法
我最终对 xmlvalue
函数进行了猴子修补。
class MyBoolean(Boolean):
@check_no_collection
def xmlvalue(self,value):
return "1" if value and value not in ("false","0") else "0"
Boolean.xmlvalue = MyBoolean.xmlvalue
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。