[一分钟学会系列之一] 一分钟学会C++调用WebService
2011-07-08 14:23
309 查看
一分钟学会系列,介绍一些易学的编程小技巧等,没有深度,但是很实用。
1. WebService 简介
Web Service即在线应用服务,可以通过Internet来访问并使用其提供的接口。Web Service可以看作是跨平台,跨语言的网络API。
构建和使用Web Service需要涉及到一些协议和规则,包括:
XML: 描述数据的标准方法
SOAP(简单对象访问协议): 表示信息交换的协议,基于XML。ATL中对其有封装,参照atlsoap.h。
WSDL:WebService描述语言,基于XML,对所提供的服务进行详细描述,包括接口和相关参数等。
UDDI:规定如何发布与发现Web Service的协议。
这是一个查询QQ是否在线的WebService:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?op=qqCheckOnline
2. 用C++调用Web Service
这里介绍一个Windows下便捷的调用方法,借助于ATL。
1. VS中在项目上点右键,选择菜单中的 Add Web Reference…,在弹出的页面输入Web Service的URL。
如果解析后是有效的Web Service地址,可以点击Add Reference完成添加。
2. 这时VS会自动生成一些文件,对我们有用的是一个头文件QQOnline.h, 名字就是刚才添加时候指定的。
命名空间:qqOnlineWebService,Web Service 类:CqqOnlineWebService,
我们需要的是它的接口HRESULTqqCheckOnline(BSTR qqCode, BSTR* qqCheckOnlineResult);
创建这个类,调用这个接口,就大功告成了。
不过不要忘了在调用之前调用CoInitialize,因为这个生成的类也是利用atlsoap.h完成请求的发送和解析的。
3. 附:
本文的示例程序:http://download.csdn.net/source/3427727
一些常用的Web Service:http://developer.51cto.com/art/200908/147125.htm
Linux下调用 Web Service可以借助gSoap, http://www.cs.fsu.edu/~engelen/soap.html
1. WebService 简介
Web Service即在线应用服务,可以通过Internet来访问并使用其提供的接口。Web Service可以看作是跨平台,跨语言的网络API。
构建和使用Web Service需要涉及到一些协议和规则,包括:
XML: 描述数据的标准方法
SOAP(简单对象访问协议): 表示信息交换的协议,基于XML。ATL中对其有封装,参照atlsoap.h。
WSDL:WebService描述语言,基于XML,对所提供的服务进行详细描述,包括接口和相关参数等。
UDDI:规定如何发布与发现Web Service的协议。
这是一个查询QQ是否在线的WebService:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?op=qqCheckOnline
2. 用C++调用Web Service
这里介绍一个Windows下便捷的调用方法,借助于ATL。
1. VS中在项目上点右键,选择菜单中的 Add Web Reference…,在弹出的页面输入Web Service的URL。
如果解析后是有效的Web Service地址,可以点击Add Reference完成添加。
2. 这时VS会自动生成一些文件,对我们有用的是一个头文件QQOnline.h, 名字就是刚才添加时候指定的。
命名空间:qqOnlineWebService,Web Service 类:CqqOnlineWebService,
我们需要的是它的接口HRESULTqqCheckOnline(BSTR qqCode, BSTR* qqCheckOnlineResult);
创建这个类,调用这个接口,就大功告成了。
不过不要忘了在调用之前调用CoInitialize,因为这个生成的类也是利用atlsoap.h完成请求的发送和解析的。
3. 附:
本文的示例程序:http://download.csdn.net/source/3427727
一些常用的Web Service:http://developer.51cto.com/art/200908/147125.htm
Linux下调用 Web Service可以借助gSoap, http://www.cs.fsu.edu/~engelen/soap.html
相关文章推荐
- Silverlight实用窍门系列:22.Silverlight使用WebService调用C++,Delphi编写的DLL文件【实例源码下载】
- Silverlight实用窍门系列:22.Silverlight使用WebService调用C++,Delphi编写的DLL文件【实例源码下载】
- webService快速入门入门系列《2》--本地调用
- C++、C#写的WebService相互调用
- 即插即用demo系列——python 调用C++代码
- C++调用WebService
- gsoap(C/C++调用webservice)
- c++ 调用webservice需要注意的地方!
- C++调用gSoap编写的WEBSERVICE与C#.NET间接口自定义结构体不能重复使用
- WebService学习笔记系列之二----通过wsimport的方式调用WebService
- java客户端调用C++ GSoap生成的webservice
- C++使用gsoap调用webservice接口
- 解决php soap webservice 用c++ soap调用的问题[转]
- Android调用WebService系列之对象构建传递 推荐
- C/C++利用gsoap库调用WebService
- JNI学习系列——在C/C++中调用JAVA
- webservice系列教学(3)-如何调用webservice
- C++、C#写的WebService相互调用
- Lua 与C/C++ 交互系列: Lua调用C/C++函数(4-1)
- C#开发WEBService服务 C++开发客户端调用WEBService服务