c - 有 gSOAP 的轻量级替代品吗?

标签 c soap soap-client gsoap

我尝试过使用 gSOAP 访问 Web 服务(例如,使用提供的 WSDL 生成 C stub ,然后在应用程序中使用它们)。但是,我发现生成的 .c 和目标文件非常大(几兆字节),这在我工作的嵌入式环境中是一个问题。

您是否知道任何更简单的 SOAP 库,或者我是否必须退回到通用 XML 生成器和解析器(如 ezXML)?

最佳答案

我最近也研究了这个问题,我发现最好的选择是 gSOAP,它非常成熟并且经过了很好的测试。但是,我决定采用非 SOAP 路由,这是一个选项,因为我同时在客户端和服务器端。在使用 gSOAP 之前,请确保您可以接受他们的许可,您可能需要发布您的代码或向他们付费,具体取决于您的使用方式。

另一个选项是 Apache Axis2/C ,尽管我没有使用它的经验(我猜它的占用空间大小与 gSOAP 相似)。他们的客户端 API 是 here .关于客户端 API 的教程是 here .

如果您决定采用解析的 XML 路线,您可能会对 this 感兴趣所以问题(见答案)。

您还可以检查 boost::spirit 以获取已解析的路由。如果您熟悉 C++,它有能力制作小型、快速、专用(和通用)的解析器(它们可以编写为可重入的,因此通过具有 extern “C” 接口(interface)的静态对象调用它们是合乎规范的).我可以从一般意义上保证它(不特定于 XML)。学习曲线陡峭,但返回丰厚。

关于c - 有 gSOAP 的轻量级替代品吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2518136/

相关文章:

c - C程序仅在GCC中执行后才终止

Java Soap 通过 https 连接

c# - 如何将 HTTP header 添加到 SOAP 客户端

java - tomcat 上的 soap 请求出错

c++ - C/C++ 打印自定义 EOL

c - 如何在 Linux 中从另一个进程触发一个进程?

ruby - 使用 Savon SOAP 调查参数

PHP Soap故障: Could not connect to host

c - 有没有办法使这个哈希查找更快?

java - java 最好的免费 orb 是什么