由于在c++中需要调用其他语言提供的webservice,而微软提供的的确不怎么样,下载了gsoap学习一下。
函数名
|
GetCigInfo
|
功能
|
返回最新的卷烟品牌列表
|
原形
|
CigInfo[] GetCigInfo(String corpCode)
|
URL
|
|
输入参数
|
名称
|
类型
|
说明
|
corpCode
|
String
|
烟草市公司代码
|
返回值
|
类型
|
CigInfo[] 卷烟信息结构体数组,数组长度为卷烟品牌数量
|
说明
|
CigInfo结构体说明
|
元素名称
|
类型
|
说明
|
cigTypeVersion
|
String
|
|
cigCode
|
String
|
|
cigName
|
String
|
|
barCodeBox
|
String
|
|
barCode
|
String
|
|
wholeSalePrice
|
Int
|
|
retailPrice
|
Int
|
|
scale
|
Int
|
|
mark
|
String
|
|
spec
|
String
|
|
注释
|
|
这是提供调用的方法说明。
因为返回的有中文,所以先特殊处理一下,先建立一个文件ttt.txt
里面有下面内容:
xsd__string = | std::wstring | wchar_t*
然后执行
wsdl2h -s -o test.h -t ttt.txt service.xml
soapcpp2 -CLx test.h
上面的service.xml是提供服务的wsdl文件
执行上面的两个命令之后,产生了一大堆cpp和h文件,把这些弄到自己的工程上面。同时也需要stdsoap2.cpp和stdsoap2.h文件。
下面是学习的源代码:
#include "soapH.h"
#include "ServiceSoap.NSMAP"
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL,"Chinese-simplified"); // 这个需要设置,否则下面显示汉字不正常
struct soap clientSOAP;
soap_init(&clientSOAP);
const char* server = "http://10.68.23.245:82/service.asmx" ;
_ns1__GetCigInfo t1 ;
//t1.corpCode = new wchar_t[100]; //自己分配内容,自己释放,好像麻烦了点,不知道是否可以用其他方式
t1.corpCode = L"420100";
_ns1__GetCigInfoResponse o1;
if( soap_call___ns3__GetCigInfo(&clientSOAP, server, NULL, &t1, &o1) == SOAP_OK ){
ns1__ArrayOfCigInfo* a1 = o1.GetCigInfoResult ;
for(int i = 0; i < a1->__sizeCigInfo ; i++){ //返回的是数组,根据数组大小来操作
wprintf(L"cigCode----%s\n",a1->CigInfo[i]->cigCode);
wprintf(L"cigName----%s\n",a1->CigInfo[i]->cigName);
printf("scale----%d\n",a1->CigInfo[i]->scale);
}
}else
soap_print_fault(&clientSOAP, stderr);
getchar();
//delete t1.corpCode ; //此处如果不释放,gSoap不知道会否释放
soap_destroy(&clientSOAP);
soap_end(&clientSOAP);
soap_done(&clientSOAP);
return 0;
}
分享到:
相关推荐
gsoap使用方法及心得
文中详细的记录了在linux下进行gsoap使用及移植的方法,希望对家有帮助
linux下gsoap使用及移植 ,有例子,照着做就可以了
介绍关于gsoap的使用方法及相关概念,内容很详细
简单的gsoap使用指南,包括部分代码.
此文档为转载资源,项目中得到验证。上传用于以后使用。
带gsoap-2.8源码,基于服务器客户端的实例,带自动生成服务客户端代码的批处理程序,及如何使用。带自己学习参考的教程; 0.解压附件,soapInterface.bat所在路径不得含中文 空格 1.新建头文件 取soapInterface....
2.2 gSOAP文档翻译计划(1、介绍) 1.介绍 gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多。绝大多数的C++web服务工具包提供一组API函数...
gSOAP 开发手册,做好了目录,以及有些英文翻译
gsoap 中文文档 gsoap 中文文档 gsoap 中文文档 gsoap 中文文档
gsoap 使用http get post调用web api接口
gsoap使用教程和soapui测试webservice接口使用教程,附上测试用的wsdl文件,有详细截图,一看就懂,抓紧下载查看吧!代码也在csdn上
里面包含了gsoap的中文文档,还有开发指南
使用gsoap开发webservice的实用资料
gsoap,直接下载,调用函数即可,实现通讯
根据wsdl使用gsoap生成的服务器和客户端
gsoap2.8实现onvif协议
gsoap最新版本最新版本,C/C++调用Web Service需要用到soap库,一般使用的有gsoap和axis cpp两种实现,这里使用gsoap来调用。gsoap是sourceforge上的一个开源项目,目前版本是2.7.6c,使用简单,可以在 linxu、...
详细介绍演示了gsoap工具的安装过程和使用,首先的一个前提就是要在命令提示符下面尽享进行的!
基于gSOAP编译工具的C++客户端调用C#服务器端WebService示例程序; gSOAP编译工具使用说明文档; gsoap_win32_2.7.6c压缩包