微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

gSoap客户端使用步骤与问题解决

简要说明

         gSoap是一个开源的C\C++ webservice客户端与服务端项目,可以生成wsdl接口并在客户端使用。

         Webservice本质就是HTTP+XML,gSoap封装了HTTP报头和soap协议的XML格式。并且它针对不同平台都实现了基于IP/TCP的通信(socket)。所以使用gSoap非常简单.

使用步骤

  1. 到官网下载gSoap的最新版本,并解压.(文章以gsoap_2.7.16为例)

关心的几个目录

\gsoap_2.7.16\gsoap-2.7\gsoap;

\gsoap_2.7.16\gsoap-2.7\gsoap\bin;

\gsoap_2.7.16\gsoap-2.7\gsoap\import;

\gsoap_2.7.16\gsoap-2.7\gsoap\WS;                                      

  1. 在C:盘下新建一个文件夹为gsoap,把\gsoap_2.7.16\gsoap-2.7\gsoap\import和\gsoap_2.7.16\gsoap-2.7\gsoap\WS拷贝过去,那么C:\gsoap\下会有import和WS两个文件夹。
  2. 新建一个工程,将gsoap\bin下的 wsdl2h.exe、soapcpp2.exe ;gsoap下的stdsoap2.cpp和stdsoap2.h拷贝到工程目录下,
  3. 打开命令提示行,进入工程目录,输入 wsdl2h.exe –I”c:\gosap\WS”–s –o ***.h webservcie地址
  4. soapcpp2.exe –I”c:\gosap\import”***.h
  5. 把soapc.cpp、soapclient.cpp、stdsoap2.cpp 加入工程
  6. 代码中使用时 引入”***proxy.h”和”***.nsmap”

问题

  问题1:soap_LONG642s 无法连接

    将stdsoap2.cpp中的 #ifndef WITH_LEAN改为#ifdef WITH_LEAN

  问题2:中文乱码问题

  1. soap_set_mode(soap,SOAP_C_UTFSTRING);
  2. 把要发送的字符串转为UTF-8

参考文献:

[1]《用gSOAP开发Web Service程序》 http://www.cppprog.com/2009/0723/138.html

[2]《用gSOAP更简单地实现Web Services Client》 http://blog.csdn.net/sharetop/archive/2008/06/20/2568266.aspx

[3]《s60下webservice的例子》 http://topic.csdn.net/u/20080616/10/70369760-ddd8-48b0-ac96-c18da0be773d.html

[4]《VisualStudio环境下GSOAP开发指南》 http://blog.csdn.net/IamNieo/archive/2009/04/10/4061652.aspx

[5]《gSOAP中文文档》http://www.cppblog.com/woaidongmao/archive/2008/05/28/51400.aspx

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐