2009-01-16 46 views

回答

7

前段時間我不得不爲一個項目做SOAP調用,而我發現的唯一可接受的解決方案是GSOAP。

http://www.cs.fsu.edu/~engelen/soap.html

它同時支持C和C++代碼,雖然與C++的工作是更好,更容易理解。雖然與我們的WCF Web服務不兼容,但它仍然可以正常工作,這意味着我們必須手動編輯自動生成的源代碼。

+7

Gsoap是GPL,因此可能不是最好的選擇。 – ghord 2014-04-30 07:30:39

+2

我已經使用了gsoap好幾年了,我可以告訴你,2.7.x之前版本的gsoap版本是基於基於MPL的商業許可證授權的,這些許可證適用於gsoap庫和soapcpp2工具,但是wsdl2h工具和生成的代碼在所有過去和最近的gsoap版本中均爲GPLv2 **,因此您可能需要專有許可證。 2.8。x版本還包含GPLv2和專有許可證下的較新的soapcpp2工具。 PS。我的經驗是,您使用專有許可證獲得的支持非常好。 – 2016-02-13 17:27:01

5

我前段時間偶然發現了gsoap,但我並不是它的接口和代碼生成器的狂熱粉絲。正如我記得的那樣,文檔顯着不足(或者至少是非常困難的格式)。

有時在不久的將來,this library可能會添加套接字支持。至少,我在一段時間之前向開發者提出了這個問題,他似乎認爲這是個想法,幾個月後,API解析器出現了一個XML解析器。我是那個圖書館的忠實粉絲,如果它不是GPL,它肯定會使用它。

3

SmartWin++有一個名爲SmartSOAP的側面項目,我認爲它非常簡潔,它具有從SocketStream開始的一個非常完整的堆棧,一直到HttpRequest/Response對象。提供一個小的(適合工作的)XML DOM類抽象,並提供SOAP。它甚至附帶了一個WSDL解析器來爲您創建代理類。它大量使用模板和STL。而且非常棒的C++。在Windows Mobile上工作...

雖然它不是非常豐富,但並不像SSL等東西。但由於代碼是純粹的藝術我猜它可以很容易被理解並在自己擴展...

許可是新的BSD ...

免責聲明;我實施它...