- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有使用 zeep 创建肥皂客户端的代码。我的服务器没有返回 wsdl 文件,但我在本地有它。
同步版本的工作原理如下:
import uuid
from os import path
import structlog
import zeep
logger = structlog.get_logger(__name__)
class SyncClient(object):
def __init__(self, ip_address: str):
self.ip_address = ip_address
self.port = 8080
self.soap_client = None
self.corrupt_timeseries_files = []
self.id = uuid.uuid4()
def connect_soap_client(self):
this_files_dir = path.dirname(path.realpath(__file__))
wsdl = 'file://{}'.format(path.join(this_files_dir, 'SOAPInterface.wsdl'))
transport = zeep.Transport(timeout=5, operation_timeout=3)
client = zeep.Client(wsdl, transport=transport)
location = "http://{}:{}".format(self.ip_address, str(self.port))
self.soap_client = client.create_service("{urn:webservices}SOAPInterface", location)
然后 asyc 客户端看起来像这样:
class AsyncClient(object):
def __init__(self, ip_address: str):
self.ip_address = ip_address
self.port = 8080
self.soap_client: zeep.client.Client = None
self.corrupt_timeseries_files = []
self.id = uuid.uuid4()
def connect_soap_client(self):
this_files_dir = path.dirname(path.realpath(__file__))
wsdl = 'file://{}'.format(path.join(this_files_dir, 'SOAPInterface.wsdl'))
transport = zeep.transports.AsyncTransport(timeout=5, wsdl_client=wsdl, operation_timeout=3)
client = zeep.AsyncClient(wsdl, transport=transport)
location = "http://{}:{}".format(self.ip_address, str(self.port))
self.soap_client = client.create_service("{urn:webservices}SOAPInterface", location)
我已经看到 zeep 的文档指出文件加载是同步的。但是当我有本地文件时,我不知道如何创建异步客户端......
最佳答案
在通过 zeep 和 httpx 源调试我的方式后,我发现解决方案实际上非常简单:
不指定 file://{path}
, 只需指定 {path}
.然后 WSDL 加载正常。
关于python - 如何使用 wsdl 文件创建异步 zeep 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65203285/
我想用 Zeep 解析一个 WSDL 文件并退出: 所有操作 为每个操作请求 xml 消息 有关解析 wsdl 的任何示例? 我想我应该使用 zeep.wsdl 和 parse_service 方法?
Python SOAP客户端库Zeep支持附件吗? 我在 documentation 中真的找不到任何东西. 想法是以 XML 格式发送带有一些附件的 SOAP 请求。我想这样做的常规方法是一条多部分
我正在使用 Python zeep发出 SOAP 请求。对于 SSL 验证,HostHeaderSSLAdapter添加为我的 URL https://dev_alias:8096/some_soap
我的 SOAP 服务将使用各种无效负载进行测试,以确认返回适当的响应。 在进行测试之前,我想对我的服务进行自己的测试。一些测试涉及删除必填字段。我想使用 zeep 模拟这些测试,但 zeep 不允许我
我一直在使用 python zeep 检查 WSDL 文档并生成相应的代码以使用 wsdl 文档中的服务和类型。 下面的代码是一个简短的例子。它部分起作用。问题是:这些参数并不是 web 服务正在等待
我正在尝试创建一个使用 WSDL 文件并生成适当的 SOAP 消息的客户端。这就是我创建客户端的方式: client = Client( wsdl=wsdl ,tran
我尝试使用 python-zeep 包来使用一些肥皂服务( ID3 Global ) 这似乎是可行的,对最近添加的功能(WSSE 身份验证和使用多个绑定(bind)的可能性)表示赞赏 现在,我尝试循环
我正在为一段使用 zeep 访问 SOAP API 的代码编写单元测试,因此我想模拟 zeep。在我的实际代码中,它看起来像这样: from zeep import Client def do_som
我有两个单独的 WSDL 文件提供给我以与服务交互,一个 WSDL 文件只提供一种登录和生成访问 token 的方法。另一个 WSDL 文件提供了与系统实际交互的方法。 如果我用要登录的第一个 WSD
我正在尝试连接到 SOAP 网络服务并使用 pandas 放在 table 上。 Zeep 给我这个列表: [{ 'ssPeca': '103', 'ssQtd': '1',
当我运行以下代码时,我不断收到以下错误:here is an error in XML document (113, 25)。 ---> 字符串 '' 不是有效的 bool 值。 我不明白为什么会这样
我有使用 zeep 创建肥皂客户端的代码。我的服务器没有返回 wsdl 文件,但我在本地有它。 同步版本的工作原理如下: import uuid from os import path import
我正在使用 zeep 调用 SOAP 网络服务。即使该方法存在于 WSDL 中,它也会抛出错误 client = Client(self.const.soap_url) client.service.
我需要实现 SPML接口(interface),最终通过 HTTP(s) 执行 SOAP 请求。我有一个 wsdl 可以归结为: [...] 如您所见,唯一定义的请求元
我是 zeep 的新手。 我有以下效果很好: import zeep from zeep.cache import SqliteCache from zeep.transports import Tr
我需要通过 wsdl 使用 API,并且我正在尝试弄清楚 zeep 模块是如何工作的。该模块是使用“pip install”安装的,每次都显示相同的错误。 导入错误:无法从“zeep”导入名称“Cli
我有以下 python 代码来设置 SOAP 请求的 header : ebsheader = xsd.Element( '{http://ebs.health.ontario.ca/}EBS
我正在尝试让 zeep 打开一个 WSDL,该 WSDL 在名称的开头具有带点的绑定(bind),并收到 ValueError: Invalid tag name '.USXMLWSSoapBindi
我正在尝试使用此处发布的特别神秘的 WSDL SOAP 服务: https://api.business.govt.nz/registry/resource/_system/governance/ap
我必须在项目中使用 SOAP API。对于特定方法,我必须发送复杂类型。 这个复杂类型的声明如下:
我是一名优秀的程序员,十分优秀!