使用python连接Amadeus (http://webservices.amadeus.com/) soap api



我是Python的新手,而且我以前没有使用过Amadeus API,我试图从Amadeus(http://webservices.amadeus.com/) soap API连接,我有。wsdl文件,我想发送请求并使用python获得响应。我已经看了SOAPpy, suds,并尝试使用为好,像这个例子:

从python发送soap请求

但是我不能确定请求是否上到服务器,如果请求是如何获得响应数据。

如果您启用了传输库的调试日志记录。

import logging
logging.basicConfig(level=logging.INFO)
logging.getLogger('suds.transport.http').setLevel(logging.DEBUG)

您将能够在日志输出中看到如下内容:

DEBUG:suds.transport.http:sending:
URL: http://someurl
HEADERS: {'SOAPAction': '"http://blablabla/identityCheck"', 'Content-Type': 'text/xml; charset=utf-8', 'Content-type': 'text/xml; charset=utf-8', 'Soapaction': '"http://blablabla/blablabla"'}
MESSAGE: <xml......>
DEBUG:suds.transport.http:received:
CODE: 200
HEADERS: {'header1': 'blablabla'}
MESSAGE: <xml......>

另外,您还可以打印出服务结果对象。这里假设我在端点中有一个名为identityCheck的方法,并将customer作为输入。

client = Client(wsdl_url, location=endpoint_url)
customer = client.factory.create('customer')
customer.userId = 'A'
customer.password = 'B'
result = client.service.identityCheck(customer)
print result

最新更新