一个gsoap创建webservice服务的简单实例

火山魔笛

发布时间:02-2110:05

自定义接口

接口即暴露出来的方法,服务端通过实现该接口提供服务,客户端通过实现该接口调用服务。接口定义文件是一个符合一定规则的头文件,可以自己定义,也可以通过gsoap自带的wsdl2h.exe工具将wsdl文件转换为头文件,现以自定义头文件为例说明,其定义如下:

简单的接口头文件

生成开发框架

gsoap提供的 soapcpp2.exe 工具可以根据定义好的头文件来生成开发框架,当前接口可以执行: D:\CommTool\gsoap-2.8\gsoap\bin\win32\soapcpp2.exe -i -x -C -L lwhTest.h 来生成开发服务端框架,其运行结果如下:

soapcpp2生成开发框架

开发服务端程序

创建控制台程序,引入所有的框架文件(包括命名空间文件 xxxx.nsmap以及gsoap目录下的stdsoap2.cpp和stdsoap2.h),工程目录结构如下:

框架结构

服务端接口实现及调用

实现及调用

实现头文件指定的方法test1,在主函数实例化一个对象会自动发布该方法。

这样一个简单的webserive服务就发布成功了。

测试

我们用一个免费且功能强大的测试工具soapui来测试一下,截图如下:

拼接请求报文、提交请求、返回结果

怎么样,是不是很强大。本次先入门展示一下gsoap开发webservice步骤,具体的底层实现原理我们之后再分析。

彩蛋

生成的服务类需要指定一个 http_get 方法,用于web端查看webservice文件内容,我们也简单的实现了一下:

http_get的实现

通过浏览器发送一个请求试试:

wsdl文件查看

好了,本次引言到此结束!

返回顶部