web 服务概述
如何创建和使用web服务
如何发布和查找WEB服务
如何理解web代理类
web服务实战
web服务:提供了一种软件组生产和流通的技术和标准。“软件就是服务”的真正实现。
服务请求者(用户)--查找--》服务代理者(电话号码簿)
服务请求者(用户)--绑定--》服务提供者(电信)
服务提供者(电信)--发布--》服务代理者(电话号码簿)
电话号码薄中注册的号码必须有一个统一的描述、查找和集成的定义。
web服务中的三种服务和操作
web服务请求者(应用程序)--查找--》web服务代理者(商业注册中心、专业注册中心、私有注册中心)
web服务提供者(软件开发商)--发布到--》web服务代理者
web服务请求者--绑定到--》web服务提供者
web服务的三基石
简单对象访问协议--SOAP,用于WEB服务的通信协议,是一种XML通信协议。包括三个部分:
SOAP封装结构:定义消息的XML格式,包括整体框架、消息内容、谁处理这些内容等。
SOAP编程规则:定义如何将程序数据表示为XML
SOAP RPC表示:定义如何使用SOAP进行远程过程调用
此外,SOAP规范还定义了包含SOAP消息的HTTP消息样式
WEB服务描述语言--WSDL
是一个XML文档,用于说明一组SOAP消息以及如何交换这些消息
还定义了服务的位置以及如何使用服务的通信协议
可以提供更高层次的消息,如web服务的业务类型和关联关键字等
统一描述、发现和集成--UDDI
web服务的黄页
其核心组件是UDDI商业注册,它使用一个XML文档来描述web服务。包括三个部分:
白页:介绍提供服务的公司,包括名称、地址、联系方式
黄页:包括按照标准进行分类的行业类别
绿页:细则介绍、访问服务接口等技术信息
http://www.wsms.cn/ws/sms.asmx
几个UDDI中心:
uddi.microsoft.com
uddi.sap.com
uddi.ibm.com
代理类
可以引用远程的web服务,在用户的应用程序中使用其功能,就像返回的数据是本地产生的一样。
步骤:1.使用WSDL.EXE创建代理类 2.使用CSC编译生成的CS文件为DLL文件
代理类的作用示意图:
1.应用程序--调用--》代理类
2.代理类格式化应用程序的调用,使之能被web服务识别
3.代理类--调用--》web服务
4.web服务执行
5.web服务将执行的结果数据以XML形式发送给代理
6.代理类再格式化,提取数据,将XML数据格式化成各种数据形式
7.代理类将结果返回给应用程序
不使用VS.NET,使用web服务
如何创建和使用web服务
如何发布和查找WEB服务
如何理解web代理类
web服务实战
web服务:提供了一种软件组生产和流通的技术和标准。“软件就是服务”的真正实现。
服务请求者(用户)--查找--》服务代理者(电话号码簿)
服务请求者(用户)--绑定--》服务提供者(电信)
服务提供者(电信)--发布--》服务代理者(电话号码簿)
电话号码薄中注册的号码必须有一个统一的描述、查找和集成的定义。
web服务中的三种服务和操作
web服务请求者(应用程序)--查找--》web服务代理者(商业注册中心、专业注册中心、私有注册中心)
web服务提供者(软件开发商)--发布到--》web服务代理者
web服务请求者--绑定到--》web服务提供者
web服务的三基石
简单对象访问协议--SOAP,用于WEB服务的通信协议,是一种XML通信协议。包括三个部分:
SOAP封装结构:定义消息的XML格式,包括整体框架、消息内容、谁处理这些内容等。
SOAP编程规则:定义如何将程序数据表示为XML
SOAP RPC表示:定义如何使用SOAP进行远程过程调用
此外,SOAP规范还定义了包含SOAP消息的HTTP消息样式
WEB服务描述语言--WSDL
是一个XML文档,用于说明一组SOAP消息以及如何交换这些消息
还定义了服务的位置以及如何使用服务的通信协议
可以提供更高层次的消息,如web服务的业务类型和关联关键字等
统一描述、发现和集成--UDDI
web服务的黄页
其核心组件是UDDI商业注册,它使用一个XML文档来描述web服务。包括三个部分:
白页:介绍提供服务的公司,包括名称、地址、联系方式
黄页:包括按照标准进行分类的行业类别
绿页:细则介绍、访问服务接口等技术信息
http://www.wsms.cn/ws/sms.asmx
几个UDDI中心:
uddi.microsoft.com
uddi.sap.com
uddi.ibm.com
代理类
可以引用远程的web服务,在用户的应用程序中使用其功能,就像返回的数据是本地产生的一样。
步骤:1.使用WSDL.EXE创建代理类 2.使用CSC编译生成的CS文件为DLL文件
代理类的作用示意图:
1.应用程序--调用--》代理类
2.代理类格式化应用程序的调用,使之能被web服务识别
3.代理类--调用--》web服务
4.web服务执行
5.web服务将执行的结果数据以XML形式发送给代理
6.代理类再格式化,提取数据,将XML数据格式化成各种数据形式
7.代理类将结果返回给应用程序
不使用VS.NET,使用web服务
1、 wsdl /out:myWebService.cs http://localhost/MyService/MathService.asmx
2、 csc /out:RegWebService.dll /t:library /r:System.xml.dll /r:System.Web.Services.dll myWebService.cs
3、 有了组件库,我们就可以编写调用WebService的客户端程序了。见CallWebService.cs。
举例:(注意引用的类是在被编译成dll文件中声明的类)
using System;
class WebServiceTest
{
static void Main()
{
//
Service1 myService = new Service1();
double db1 = double.Parse
(Console.ReadLine());
double db2 = double.Parse
(Console.ReadLine());
double dbResult = myService.WebAdd
(db1,db2);
Console.WriteLine("结果
为:"+dbResult.ToString());
}
}
4、 csc /r:myWebService.dll CallWebService.cs
浙公网安备 33010602011771号