如何在Python中使用suds转储请求和服务器响应的原始XML
我正在使用suds 0.4和python 2.6来和远程服务器进行通信。
它的WSDL加载得很好,但每次调用函数时都会返回错误。看起来那个服务器有问题。
现在我需要获取发送到服务器的SOAP结构的详细信息,以及服务器的响应,也就是纯SOAP格式的内容。
我该怎么做呢?
1 个回答
14
把 suds.transport
的日志设置为调试模式,可以让你看到发送和接收的消息。
如果你是在进行互动式操作,我觉得这样设置挺好的:
import logging
logging.basicConfig(level=logging.INFO)
logging.getLogger('suds.client').setLevel(logging.DEBUG)
logging.getLogger('suds.transport').setLevel(logging.DEBUG)
logging.getLogger('suds.xsd.schema').setLevel(logging.DEBUG)
logging.getLogger('suds.wsdl').setLevel(logging.DEBUG)
from suds.client import Client
s = Client('http://someservice?wsdl')
如果你想把发送和接收的 XML 信息单独保存到一个文件里,就需要调整一下日志设置,具体可以参考这个链接:http://docs.python.org/library/logging.html