- 主题:什么是Web Services(Web服务)
鉴于目前版面上经常出现不适合本版讨论内容文章,其大部分原因都是因为发文者
并不请出web服务的概念,所以在这里发一篇文章简单的介绍一下什么是
Web服务,希望各牛人批评指正:)
Web service 就是一个应用程序,它向外界暴露出一个能够
通过Web进行调用的API。这就是说,你能够用编程的方法通过Web
来调用这个应用程序。Web services是建立可互操作的分布式应用程序的新平台。
Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。
你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,
只要我们可以通过Web service标准对这些服务进行查询和访问。
从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、
自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找
以及通过Web来调用。Web Service便是基于网络的、分布式的模块化组件,
它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能
与其他兼容的组件进行互操作。它可以使用标准的互联网协议,像超文本
传输协议HTTP和XML,将功能体现在互联网和企业内部网上。
Web Service平台需要一套协议来实现分布式应用程序的创建。
任何平台都有它的数据表示方法和类型系统。要实现互操作性,
Web Service平台必须提供一套标准的类型系统,用于沟通不同平台、
编程语言和组件模型中的不同类型系统。目前这些协议有:
1.XML和XSD
可扩展的标记语言XML是Web Service平台中表示数据的基本格式。
除了易于建立和易于分析外,XML主要的优点在于它既与平台无关,
又与厂商无关。XML是由万维网协会(W3C)创建,W3C制定的XML SchemaXSD
定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。
Web Service平台是用XSD来作为数据类型系统的。当你用某种语言如JAVA
来构造一个Web Service时,为了符合Web Service标准,所有你使用
的数据类型都必须被转换为XSD类型。
2.SOAP
SOAP即简单对象访问协议(Simple Object Access Protocol),它是
用于交换XML编码信息的轻量级协议。它有三个主要方面:XML-envelope
为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对
象的规则,执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传
输协议上。例如,你可以使用 SMTP,即因特网电子邮件协议来传递SOAP消息,
这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负载保持相同。
Web Service 希望实现不同的系统之间能够用“软件-软件对话”的方式相互调用
打破了软件应用、网站和各种设备之间的格格不入的状态,实现“基于Web无缝
集成”的目标。
3.WSDL
Web Service描述语言WSDL就是用机器能阅读的方式提供的一个正式
描述文档而基于XML的语言,用于描述Web Service及其函数、参数和返
回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。
4.UDDI
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、
为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组
使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问
协议的实现标准。
--
FROM 202.197.125.175
呵呵
这个当然比我说得好
我写这个的目的
是为了让水车们迅速的判断
要发的文章是不是适合本板讨论:)
【 在 hyla9 (长命百岁) 的大作中提到: 】
: w3c上的相关文档已经说得很清楚了吧,
: 比如Web Services Architecture中:
: 1.5 What is a Web service?
: There are many things that might be called "Web services" in the world
: at large. However, for the purpose of this Working Group and this
: architecture, and without prejudice toward other definitions, we will
: use the following definition:
: [Definition: A Web service is a software system designed to support
: interoperable machine-to-machine interaction over a network. It has an
: interface described in a machine-processable format (specifically WSDL).
: Other systems interact with the Web service in a manner prescribed by
: ...................
--
FROM 202.197.125.175
这个是我没有把握好
我的原意是,Web Services是一个框架,或者说一个体系结构
一个应用程序经发布后,它就成了一个Web服务(Web services)
……
怎么说好呢,从宏观上来说,Web Services是一个框架,
但在微观上来说,也是经由发布后提供某一功能的应用程序。
我们不是常说把什么什么发布成Web服务么?都成了,难道还不“是”?
:)
偶语文学都不好,对不起大家了:)
【 在 XiaojingLiu (Xiaojing) 的大作中提到: 】
: 据说web services和web service是两个不同的概念,是这样么?
: 另外,据说web services不是应用程序,而是一个框架或者说是协议(不好形容),是这样么?
: 而web service才是一个应用程序或者说是一个具体化的服务?
: 指点一下,呵呵
--
FROM 202.197.125.175
呵呵,自己M自己不太好意思啊
SOAP不一定非要绑定HTTP
理论上SOAP可以绑定任何TCP/IP层的传输协议
【 在 computec (刀傍) 的大作中提到: 】
怎么不m?
webservice和web没什么关系啊,
出了最后那个unni好像要求使用http.
其他的好像都是协议无关的dd.
只要定义一个方法,双方商定一下使用那个协议就可以了.
为什么soap使用应用层协议,而不是传输层协议?
是不是过程中有些是必须用http封装的?
【 在 nobodyelse (空无一人||为什么我一玩杀人游戏就断网) 的大作中提到: 】
: 鉴于目前版面上经常出现不适合本版讨论内容文章,其大部分原因都是因为发文者
: 并不请出web服务的概念,所以在这里发一篇文章简单的介绍一下什么是
: Web服务,希望各牛人批评指正:)
: Web service 就是一个应用程序,它向外界暴露出一个能够
: 通过Web进行调用的API。这就是说,你能够用编程的方法通过Web
: 来调用这个应用程序。Web services是建立可互操作的分布式应用程序的新平台。
: Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。
: 你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,
: 只要我们可以通过Web service标准对这些服务进行查询和访问。
: 从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、
: 自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找
: ...................
--
FROM 202.197.125.175
呵呵
你要这么理解也可以
本来SOAP就可以看成XML+HTTP/FTP/SMTP。。。
【 在 computec (刀傍) 的大作中提到: 】
: 同感,不过还是我脸皮厚些:)原则还是有益于大家吧.
: 是不是叫XMLservice也可以?
--
FROM 202.197.125.175