aco*_*aco 1 python soap suds spyne
我正在尝试几个不同的Python SOAP服务器库,我似乎无法让spyne的'hello world'示例工作:https: //github.com/arskom/spyne/blob/master/examples/ helloworld_soap.py
当我运行它时,它启动一个SOAP服务器,我可以在浏览器中成功查看WSDL http://localhost:7789/?wsdl.但是,当我尝试连接suds客户端时,我得到一个例外:
Python 2.7.3 (default, Aug 1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from suds.client import Client
>>> c = Client('http://localhost:7789/?wsdl')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/client.py", line 112, in __init__
self.wsdl = reader.open(url)
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/reader.py", line 152, in open
d = self.fn(url, self.options)
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/wsdl.py", line 158, in __init__
self.resolve()
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/wsdl.py", line 207, in resolve
c.resolve(self)
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/wsdl.py", line 661, in resolve
self.resolveheaders(definitions, op)
File "/home/acordiner/ve/local/lib/python2.7/site-packages/suds/wsdl.py", line 725, in resolveheaders
raise Exception, "message'%s', not-found" % mn
Exception: message's0:SomeObject', not-found
Run Code Online (Sandbox Code Playgroud)
我能做错什么?我正在使用spyne 2.9.4和泡沫0.4.
我很抱歉这种混乱.
您链接到的示例是:https://github.com/arskom/spyne/blob/ec2bd6feb89fb36915b7266497c177e4c6f78b83/examples/helloworld_soap.py
它被用来说明一个suds bug,它在我自己的suds版本中修复,但不在主流suds中.我后来忘记在主Spyne存储库中将其还原.
Suds无法处理名称空间不同的传出头对象targetNamespace.您可以通过设置SomeObject.__namespace__ = 'spyne.examples.hello.soap'而不是使您的suds版本工作'aaa'.
您也可以删除helloworld示例中不合适的传出标头声明.
我希望这有帮助.
| 归档时间: |
|
| 查看次数: |
3841 次 |
| 最近记录: |