什么是webservice,通俗易懂些

什么是webservice,通俗易懂些

问题描述:

同标题,他是否就是个中间件,然后按他的规范,各自间可以调用这样。有点昏。不甚感激,刚接触

Web Service主要是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。 Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等,所以Web Service可以在任何支持这些标准的环境(Windows,Linux)中使用。注:SOAP协议(Simple Object Access Protocal,简单对象访问协议),它是一个用于分散和分布式环境下网络信息交换的基于XML的通讯协议。在此协议下,软件组件或应用程序能够通过标准的HTTP协议进行通讯。它的设计目标就是简单性和扩展性,这有助于大量异构程序和平台之间的互操作性,从而使存在的应用程序能够被广泛的用户访问。

因为他的什么特性流行了起来,为什么使用它
1、跨防火墙的通信
2、应用程序集成
3、B2B的集成
4、软件和数据重用

通俗易懂一点请看这里:
[url]https://www.google.com.hk/search?num=10&hl=en&newwindow=1&safe=strict&site=imghp&tbm=isch&source=hp&q=webservice&btnG=Search+by+image&biw=1366&bih=606&sei=bLnIUMC1B9CviQfO24DIDA[/url]
很是一目了然

作用是在两个独立的程序中,互相调用对方的程序方法。
它是一种接口开放调用的手段,或者说是程序与程序之间的通用的调用协议。
够简单吧~~~

WebService 通俗点讲, 网络服务。 程序编写的功能,可以通过网络发布。
主要解决问题:
1. 多语言之前的调用。 例如Java <-> C++;
2. 已有程序向外部暴漏接口
3. balabala... 一堆场景.

WebService 为了能够穿透防火墙, 一般走HTTP协议,
主流WebService协议:
[b]SOAP[/b]
狭义的WebService就是这种。 通过HTTP POST的方式传送SOAP协议的XML。
SOAP 协议的XML
一般包含:
SOAP头信息
语法定义
消息体:
接口信息,
接口中的数据
以上信息需要WebService发布放提供wsdl进行描述。 使用者需要通过wsdl描述的规则来调用WebService.
wsdl的发布/使用,基本都有SOAP开发库提供,比如Axis2, CXF, XFire

[b]Rest-ful WebService[/b]
互联网应用比较倾向这类webservice, weibo, SNS等网站都采用这种方式。
直接使用 url + http method(get,post,put,delete,option,trace) 进行接口定义。
这种方式在发布接口,接口调用方面都很简单。
传输层可以是各种格式,主流格式 : json

Rest-ful 不好理解为技术实现, 他只是一种推荐的架构形式, 这种形式还原了HTTP协议的本质。

哪里在用Rest-ful风格: Rails, Play2.0 .... balabala 又是一堆。

选用:
如果团队擅长b/s架构开发,并且对HTTP协议很熟, 首选REST-ful WebService.

简单点,webservice不算中间件,它能实现2个系统之间的直接交互。流行点,跨防火墙,同步。

两个不同系统间通信用,例如PA需要将业务结果同步到PB中,这时候PB系统需要提供一个接受PA系统信息的借口并发布,PA:系统A,PB:系统B,现在流行的框架处理webservice的有 axis,和cxf 可以搜索一下。