gpt4 book ai didi

python - python 中的 SOAP 解决方案

转载 作者:太空宇宙 更新时间:2023-11-03 18:52:10 25 4
gpt4 key购买 nike

我对 SOAP 和 Web 服务相当陌生,我尝试创建工作且稳定的 SOAP 环境。经过一番阅读后,我决定使用 suds 客户端和soaplib 服务器。我使用的是python2.7,并且我已经使用easy_install安装了suds和soaplib,所以它是默认的程序组合。操作系统是最新的Ubuntu 13。

我创建了 2 个基于教程 hello_world 示例的脚本: http://soaplib.github.io/soaplib/2_0/pages/helloworld.html

经过一些细微的更改:

  • 在服务器中添加fromsoaplib.core.service importsoap
  • 在客户端的 hello_client = Client('http://localhost:7789/HelloWorldService?wsdl') 中添加服务名称

我得到了一个工作解决方案,允许我运行服务器(端口繁忙),并且 suds 客户端在使用 say_hello 函数后给我一个返回信息。

问题是我无法使用示例中使用的定义在此服务器中创建新方法。即使简单地将名称从 say_hello 更改为 say_hello2 也会给我带来错误:suds.MethodNotFound:找不到方法:'Application.Application.say_hello2'

请帮我解决这个问题:)

我也在想别的事情。 sopalib 自 2010 年以来似乎不再活跃,也许这里存在一些问题?也许有比 SUDS+soaplib 更好、更快、更高效的 SOAP 连接解决方​​案?如果是这样,请给我一些建议。

感谢您的帮助迈克

最佳答案

似乎问题是由于泡沫、缓存造成的

from suds.client import Client
hello_client = Client('http://localhost:7789/HelloWorldService?wsdl')

hello_client.options.cache.clear() #make this line

result = hello_client.service.say_hello2(...) # parameters inside

关于python - python 中的 SOAP 解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18098636/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com