【发布时间】:2022-01-24 02:29:58
【问题描述】:
TPA.wsdl https://pastebin.com/7DBhCHbv 数据服务.xsdhttps://pastebin.com/AFhg64hH
from zeep import Client
import base64
from requests import Session
from zeep.wsse.username import UsernameToken
from zeep.transports import Transport
from zeep.exceptions import Fault
Username = '....'
Password = '....'
sendFile = 'V07_220110.ffdata'
session = Session()
session.verify = False
try:
wsdl = 'TPA.wsdl'
# initialize zeep client
client = Client(
wsdl=wsdl,
wsse=UsernameToken(Username, Password),
transport=Transport(session=session)
)
with open(sendFile, "rb") as pdf_file:
encoded_string = base64.b64encode(pdf_file.read())
with client.options(raw_response=True):
node = client.service.uploadEdasDraft(sendFile, encoded_string )
print(node.content)
except Fault as fault:
parsed_fault_detail = client.wsdl.types.deserialize(fault.detail[0])
总是得到响应
我收到错误 ORA-31011:XML 解析失败
通过启用 MTOM 设置从 SOAPUI 一切正常发送
那么如何向它发出请求,以及如何调试发送请求?
【问题讨论】:
-
您是否尝试过在通话后立即使用断点?您可以在一个通用块中捕获所有错误,因此它可能与内容有关,也可能与一般调用有关。我建议在客户端初始化后立即添加一个断点,然后从那里逐步执行代码。
-
如何在python中添加断点?
-
假设你运行这个命令行。 Python2:导入pdb; pdb.set_trace()
-
Python3(.6 及以上我相信): breakpoint()
标签: python soap wsdl zeep wsse