工具:gsoap-2.8.66(這個是目前各個公司使用最多的,也是最完善的)c++
系統環境:Centos7 64位程序員
步驟: web
1.下載gsoap工具 下載地址:https://sourceforge.net/projects/gsoap2/files/工具
2.解壓工具:unzip gsoap_2.8.66.zipspa
3.編譯咱們須要的工具(因爲咱們要作到最少依賴,因此只須要編譯用到的soapcpp2和wsdl2h兩個工具).net
4.開始編譯:code
(1)進入到gsoap/src目錄下,執行 make -f MakefileManual soapcpp2 blog
(2)進入到gsoap/wsdl目錄下,執行 make -f MakefileManual(若是你安裝了OpenSSL就執行 make -f MakefileManual secure)
教程
至此,工具都已編譯完成,編譯好的程序在gsoap/bin目錄下。ip
5. 生成所需文件:
(1)進入到gsoap/bin目錄下,執行如下命令:
./wsdl2h -o calc.h http://www.genivia.com/calc.wsdl
會在當前目錄下生成一個 calc.h文件
(2)接着執行如下命令:
./soapcpp2 -j -CL -I/path/to/gsoap/import calc.h
(3)能夠在gsoap/bin目錄下看到已經生成的全部文件
6.編寫calcclient.cpp客戶端例子:
#include "calc.nsmap" #include "soapcalcProxy.h" int main() { calcProxy calc; double sum; if (calc.add(1.23, 4.56, sum) == SOAP_OK) std::cout << "Sum = " << sum << std::endl; else calc.soap_stream_fault(std::cerr); calc.destroy(); // same as: soap_destroy(calc.soap); soap_end(calc.soap); }
7. 把gsoap目錄下的stdsoap2.h文件複製到gsoap/bin目錄下:
8.執行編譯命令,會生成calcclient程序:
c++ -o calcclient calcclient.cpp soapC.cpp soapcalcProxy.cpp /home/webservice/gsoap-2.8/gsoap/stdsoap2.cpp
注:加上stdsoap2.cpp的具體路徑,否則編譯出錯,這個是個人路徑:/home/webservice/gsoap-2.8/gsoap/。
9.執行calcclient程序:
./calcclient 出現結果Sum = 5.79
至此,一個簡單的客戶端小Demo就完成了。也算是初入gsoap。
過幾天忙完了,會繼續更新服務端和客戶端總體教程。
轉載請註明出處。