Web Service的几个很重要的概念

来源:互联网 发布:java 提高开发效率 编辑:程序博客网 时间:2024/04/29 13:50
 

HTML Tags and JavaScript tutorial



Web Service的几个很重要的概念





接上次,我们在使用Web Service之前,要先了解一下这么几个东东:
1、SOAP
         SOAP

Web Service
的基本通信协议。因为
SOAP

DCOM

CORBA
在概念上有相同之处,所以很多人在问:“
SOAP
是怎样激活对象的?”或“
SOAP
在使用什么命名服务(
Naming Service
)?”。或许在执行
SOAP
的过程当中会用到这些,但这些并不在
SOAP
规范要考虑的范畴之内。
SOAP
只是定义
SOAP
消息的
XML
格式(
XML Format
),如果你用一对
SOAP
标记(
SOAP Elements
)把
XML
文档括起来,那么这个就是一个
SOAP
消息,这不是很简单吗?
         SOAP
规范还定义了怎样用
XML
来描述程序数据(
Program Data

,
怎样执行
RPC

Remote Procedure Call
)。这些可选的规范是为了构建
RPC-style
的应用程序(客户端
SOAP
消息包含函数名和在函数中用到的参数,而服务器端
SOAP
消息包含执行函数之后的结果)。大多数
SOAP
解决方案都支持
RPC-style
应用程序,因为很多程序员已对
DCOM

CORBA
熟悉。
SOAP
还支持
Document-style
应用程序(
SOAP
消息只包含
XML
文本信息)。
Document-style
应用程序有很好的灵活性,所以很多用
RPC
很难构建的
Web Service
用这种方式构建。
        最后
SOAP
规范还定义了
HTTP
消息是怎样传输
SOAP
消息的。这并不代表
SOAP
只能用
HTTP
来作为传输协议,
MSMQ

SMTP

TCP/IP
都可以做
SOAP
的传输协议。 
       
很多大公司根据
SOAP
规范,都开发出了自己的
SOAP
解决方案。这些解决方案都是相对于某种语言。比如说
Microsoft SOAP toolkit2.0

COM
函数转换成
SOAP
消息,而
Apache toolkit

JAVA
函数转换成
SOAP
消息。这样难免带来一些兼容性问题。
 
        现在
SOAP
的很多另人瞩目的特性已成为现实(
SOAP
已经运行于不同的硬件和软件平台),而且有
70
多个解决方案。之所以
SOAP
被人们所爱戴,是因为
SOAP
比其他同类技术(
CORBA

DCE
)简单易用。
        安全性对于应用程序来说是很重要的。那么
SOAP
的安全性如何呢?对于把
HTTP
作为传输协议的
SOAP
来说是没有问题的,因为
HTTP
协议已经有很好的安全构架。那么用其他传输协议会出现安全问题吗?不是的,你不必担心,因为已经有这方面的规范了(
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnglobspec/html/ws-security.asp
)。
2、
 
WSDL
        WSDL
是一种
XML
文档,它定义
SOAP
消息和这些消息是怎样交换的。
IDL

Interface Description Language
)是用于
COM

CORBA
的,
WSDL
是用于
SOAP
的。
WSDL
是一种
XML
文档,所以我们可以阅读和编辑,但很多时候是用工具来创建、由程序来阅读。
        举个例子,你要使用供应商的
Web Service
构建应用程序。你可以向供应商索取使用
Web Service
的范例,然后按照范例来构建应用程序。这样可能出现意料不到的错误,比如说,你在程序中使用的客户代码的数据类型是
integer
,而供应商使用的数据类型是
string.

WSDL
详细定义客户端消息的格式,需要什么样的参数,这样可以避免不必要的错误。
3、 
UDDI
        UDDI
可以比喻成电话本,电话本里记录的是电话信息,而
UDDI
记录的是
Web Service
信息。你可以不把
Web Service
注册到
UDDI
。但如果要让全球的人知道你的
Web Service
,最好还是注册到
UDDI

        UDDI
目录说明文件也是一个
XML
文档,它包括三个部分。“白页(
White Paper
)”说明提供
Web Service
的公司(人)信息,比如说名称、地址和联系方式等等。“黄页(
Yellow Paper
)”说明
UDDI
目录的分类,比如说金融、服务和印刷等等。“绿页(
green Paper
)”说明接口(
Web Service
提供的)的详细信息。
UDDI
提供多种查询方式,来帮助你找到需要的
Web Service
。如果你查询与财务有关的
Web Service
,那么
UDDI
会提供详细的信息。
        只是一点点而已,如查想了解更多请
参考资料
       
XML Web Service basics,
Roger Wolter

Microsoft Corporation

2001

12

               
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebsrv/html/webservbasics.asp

本文是翻译了下面的文章)
                原文:
http://www.trueobject.net/board/zboard.php?id=web_service_lecture&no=2
链接地址:
http://ethinks.cnblogs.com/archive/2006/07/13/450076.html
 


原创粉丝点击