windows下vs2012用gsoap开发webservice实例
2014-10-20 16:38
344 查看
零:说明
1、本文是根据网上前人经验结合自己动手操作写成,开发工具用的vs2012,gsoap用的是gsoap-2.8;
2、gsoap提供的工具简单介绍
1)wsdl2h.exe:根据WSDL文件生成头文件。这个是别人发布了webservice服务,提供给我们WSDL文件,我们根据WSDL生成头文件,进而实现我们的客 户端。
2)soapcpp2.exe:根据头文件生成调用远程soap服务的客户端框架和提供soap服务的服务端框架。如果我们要自己做server端,则需要自己写头文件, 根据头文件,生成客户端框架和服务端框架,在此框架中实现自己的服务。
一:根据头文件用soapcpp2.exe生成框架代码
0、该soap服务端是实现两个整数相加,供远程调用;
1、编写头文件
1)在vs中新建解决方案,名字为gSoapTest
View Code
三、测试
1、分别编译server、client
2、启动server,并绑定访问端口号4567
通过IE访问http://localhost:4567,如下,则服务端成功
3、启动client,输入1 2,如下,代表客户端访问服务端成功
1、本文是根据网上前人经验结合自己动手操作写成,开发工具用的vs2012,gsoap用的是gsoap-2.8;
2、gsoap提供的工具简单介绍
1)wsdl2h.exe:根据WSDL文件生成头文件。这个是别人发布了webservice服务,提供给我们WSDL文件,我们根据WSDL生成头文件,进而实现我们的客 户端。
2)soapcpp2.exe:根据头文件生成调用远程soap服务的客户端框架和提供soap服务的服务端框架。如果我们要自己做server端,则需要自己写头文件, 根据头文件,生成客户端框架和服务端框架,在此框架中实现自己的服务。
一:根据头文件用soapcpp2.exe生成框架代码
0、该soap服务端是实现两个整数相加,供远程调用;
1、编写头文件
1)在vs中新建解决方案,名字为gSoapTest
#include <stdio.h> #include <stdlib.h> #include "stdsoap2.h" #include "soapH.h" #include "add.nsmap" int add(const char* server, int num1, int num2, int *sum); int main(int argc, char **argv) { int result = -1; char* server="http://localhost:4567"; int num1 = 0; int num2 = 0; int sum = 0; if( argc < 3 ) { printf("usage: %s num1 num2 \n", argv[0]); exit(0); } num1 = atoi(argv[1]); num2 = atoi(argv[2]); result = add(server, num1, num2, &sum); if (result != 0) { printf("soap err,errcode = %d\n", result); } else { printf("%d+%d=%d\n", num1, num2, sum ); } return 0; } int add(const char* server, int num1, int num2, int *sum) { struct soap add_soap; int result = 0; soap_init(&add_soap); // soap_set_namespaces(&add_soap, add_namespaces); //该函数是客户端调用的主要函数,后面几个参数和add.h中声明的一样,前面多了3个参数,函数名是接口函数名ns__add前面加上 //soap_call_ soap_call_ns__add( &add_soap, server, "", num1, num2, sum ); if(add_soap.error) { printf("soap error:%d,%s,%s\n", add_soap.error, *soap_faultcode(&add_soap), *soap_faultstring(&add_soap) ); result = add_soap.error; } soap_end(&add_soap); soap_done(&add_soap); return result; }
View Code
三、测试
1、分别编译server、client
2、启动server,并绑定访问端口号4567
通过IE访问http://localhost:4567,如下,则服务端成功
3、启动client,输入1 2,如下,代表客户端访问服务端成功
相关文章推荐
- Windows下用gSOAP开发webservice程序
- 在windows下使用gSOAP技术调用WebService,使用vc开发
- C++: windows使用gsoap开发webservice程序(单线程)---服务端
- Java开发WebService实例--计数器(上)
- 使用gSOAP开发实例(2) 股票信息服务端程序
- Java开发WebService实例--计数器
- 使用VC++ 6.0开发WebService(gsoap)
- 在Windows环境下,使用Android NDK开发实例
- Java开发WebService实例--计数器
- VS2005开发的Windows服务程序实例
- WebService开发实例 (Xfire+Spring+Hibernate)
- C#Windows服务程序开发实例浅析
- 《pro Spring》学习笔记之Spring+Axis1.4开发WebService实例
- Java开发WebService实例--计数器
- 应用XFire开发WebService实例 xfire+myeclipse+weblogic 8
- 基于Eclipse、Tomcat、Axis开发WebService简单实例
- Java开发WebService实例--计数器(下)
- Java开发WebService实例--计数器的学习
- Java开发WebService实例--计数器(上)
- WebService开发实例 (Xfire+Spring+Hibernate)