python - 拆分一个巨大的 WSDL 文件

标签 python web-services wsdl suds netsuite

我正在使用 Python 与 Netsuite Web 服务层进行交互。使用 suds 解析 WSDL 需要将近两分钟的时间。我能够使用 redis 编写一个缓存层,在客户端被解析后解决了一些加载问题,但第一次仍然需要大量时间。

>>> # Takes several minutes to load
>>> client = suds.Client(huge_four_mb_wsdl_file)

由于我只使用服务的一小部分,有没有办法只从 WSDL 中提取这些服务并将它们放入我自己的较小的 WSDL 中?

最佳答案

如果您查看 v2013_2 version of the wsdl source 你会看到它实际上导入了 38 个其他 xsd 文件。

您可以通过以下方式加快流程:

  • 创建仅导入部分 xsd 文件的本地 wsdl。 (节省下载/解析时间)
  • 使用 pickle 序列化一个现成的客户端并在启动时加载它(节省解析时间)

还要确保您在应用程序生命周期中只需创建一次客户端。

关于python - 拆分一个巨大的 WSDL 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11645723/

相关文章:

由于 WSDL 中存在多个同名类型,WCF 生成的代理抛出 InvalidOperationException

python - PyTorch 错误 : CUDA error: CUBLAS_STATUS_INTERNAL_ERROR when calling `cublasCreate(handle)`

python打字模块: Mixin

python - 如何制作windows的数据框?

Python ctrl+c,如果提前终止则执行函数

java - soap:address 位置属性 - 最佳实践

javax.net.ssl.SSLException : Invalid Padding length 异常

.net - 解析来自 Web 服务的 XML 结果

.net - 使用 Android 调用 .NET Webservice

soap - 如何连接到 SVC 端点?