Web Service的几个很重要的概念

原创 2007年09月22日 17:19:00
 

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
 


C++中几个重要的概念(一)

我们先来读一小段代码吧,从而引出几个概念: template class PFArray { public: PFArray(); PFArray(int capacityValue ); P...
  • cyongxue
  • cyongxue
  • 2013年11月26日 11:08
  • 1209

RxJava使用介绍-概念

RxJava系列教程:1. RxJava使用介绍 【视频教程】 2. RxJava操作符   • Creating Observables(Observable的创建操作符) 【视频教程】 ...
  • jdsjlzx
  • jdsjlzx
  • 2016年05月23日 23:40
  • 4648

Java与RabbitMQ(六)RabbitMQ几个重要的概念、术语详解

RabbitMQ是流行的开源消息队列系统,用Erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。这里我们介绍RabbitMQ中主要涉及的几个重要概念,理解后希望在实际使用中...
  • zixiao217
  • zixiao217
  • 2016年10月04日 13:56
  • 645

Spring MVC与JAX-RS比较与分析

springmvcstringautowiredrestweb应用开发 目录(?)[-]      过去几年REST逐渐成为影响Web框架Web协议与Web应用设计的重要概念如果你还不了解...
  • tom_or_jerry
  • tom_or_jerry
  • 2015年05月22日 17:10
  • 241

vue需要了解的一些概念

vue需要了解的一些概念
  • Bright2017
  • Bright2017
  • 2017年07月22日 16:11
  • 414

Zookeeper中几个重要概念

zookeeper是hadoop下面的一个子项目, 用来协调跟hadoop相关的一些分布式的框架, 如hadoop, hive, pig等, 其实他们都是动物, 所以叫zookeeper ——“动...
  • notOnlyRush
  • notOnlyRush
  • 2017年04月15日 23:06
  • 156

几个重要概念

一、同步(synchronous)和异步(asynchronous) 同步:简单的理解,就是同一时间只有一个动作在执行,即所有的动作都是线性的,下一步的动作必须等到上一步的动作完成(响应)后才能执...
  • u013313550
  • u013313550
  • 2017年04月27日 11:43
  • 129

Python 中几个重要的概念

python 中,有几个比较重要的概念,名字空间,作用域,赋值操作 变量命名 名称格式:(下划线或者字母)+(任意数目的字母,数字或下划线) 注意:  1.区分大小写  2.禁止使用保留字 ...
  • Jake_cai
  • Jake_cai
  • 2017年06月15日 09:34
  • 733

C++重要几个概念

1   C++中虚函数的作用是什么   虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。 下面是对C++的虚函数这玩意儿的理解。 一,  什么是虚函数(...
  • tiantian1980
  • tiantian1980
  • 2014年12月01日 09:38
  • 397

无线通信中几个重要概念

原文地址,请点击! 1. 信道  信道是对无线通信中发送端和接收端之间的通路的一种形象比喻,对于无线电波而言,它从发送端传送到接收端,其间并没有一个有形的连接,它的传播路径也有可能不只一条,但是我...
  • eagle11235
  • eagle11235
  • 2017年03月31日 17:06
  • 171
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Web Service的几个很重要的概念
举报原因:
原因补充:

(最多只允许输入30个字)