请求xml
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://www.example.org/Ec/">
<SOAP-ENV:Body>
<ns1:callService>
<paramsJson>{"pageSize":"1","page":1}</paramsJson>
<appToken>appToken</appToken>
<appKey>appKey</appKey>
<service>getCountry</service>
</ns1:callService>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
响应xml
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://www.example.org/Ec/">
<SOAP-ENV:Body>
<ns1:callServiceResponse>
<response>{"ask":"Success","message":"Success","pagination":{"page":"1","pageSize":"1"},"count":"260","nextPage":"true","data":[{"country_code":"AF","country_name":"阿富汗","country_name_en":"AFGHANISTAN"}]}</response>
</ns1:callServiceResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
开始是准备使用python的zeep处理,参考链接
http://docs.python-zeep.org/e...
但是到了后面就不知道怎么写了。怎么发送appToken和appKey,paramsJson到服务器呢?如何写服务器提供的方法呢?跪求大神能够提供代码参考。使用其他python的库也可以。 万分感谢!
import zeep
wsdl = 'http://202.104.134.94:6280/default/svc/wsdl'
client = zeep.Client(wsdl=wsdl)
print(client)
你可以用xml的库来实现字符串组织,也可以自己用xml文本硬填。比如可以定义一个字符串
a="<?xml .....省略无用的><appToken>{appToken}</appToken></xml>".format(appToken='xzxzxxxx')
然后
import json
body = json.dumps(a)
h=''#根据文档组织xml头
zeep.post(url='xxx',message= body,headers=h)
body就是你要发送的xml请求内容。