Webservice原理解析

来源:互联网 发布:编程书籍 用什么看 编辑:程序博客网 时间:2024/05/22 04:38

Webservice的基本概念:

Web Services 直译过来就web 服务, 个人理解就是一种基于Internet的对外服务机制。 它的应用领域是Internet,而不仅限于局域网或试验环境。这就要求我们的Web Services 框架必须适用于现有的Internet 软件和硬件环境,即服务的提供者所提供的服务必须具有跨平台、跨语言的特性

其次,Web Services 所提供的服务不仅是向人,更需服务于其它应用系统。现有的Web网站也可以认为是面向服务的,但这种服务仅仅可以提供给人使用(只有人类才可以读懂浏览器下载的页面) 。而新一代的Web Services 所提供的服务应能被机器所读懂,例如其它应用程序及移动设备中的软件系统。这样,我们可以看出,Web Services 的发展方向实际上是构造一个在现有Internet 技术上的分布计算系统。

                            

Web Services 框架的核心技术包括SOAP ,WSDL 和UDDI ,它们都是以标准的XML 文档的形式表的。SOAP 是Web services 的通信协议。

 

●SOAP:

SOAP是一种简单的、轻量级的基于XML 的机制,用于在网络应用程序之间进行结构化数据交换。SOAP包括三部分:一个定义描述消息内容的框架的信封,一组表示应用程序定义的数据类型实例的编码规则,以及表示远程过程调用和响应的约定。

 

●WSDL:

WSDL表示WEB服务说明语言。WSDL文件是一个XML 文档,用于说明一组SOAP消息以及如何交换这些消息。

 

●UUDI:

UDDI(统一描述发现和集成) 提供一种发布和查找服务描述的方法。UDDI 数据实体提供对定义业务和服务信息的支持。WSDL 中定义的服务描述信息是UDDI注册中心信息的补充。

 

 

WebServices体系架构

  Web Services 的体系架构如图1 所示

  Web Services 服务提供方通过WSDL(Web Services Description Language) 描述所提供的服务,并将这一描述告知Web Services 注册服务器。注册服务器依据WSDL 的描述,依照UDDI (Universal Description Discovery and Integration) 的协定更新服务目录并在Internet 上发布。用户在使用Web Services 前先向注册服务器发出请求,获得Web Services 提供者的地址和服务接口信息,之后使用SOAP 协议(Simple Object Access Protocol) 与Web Services 提供者建立连接,进行通信。Web Services 的技术主要建立在XML 的规范之上,这保证了这一体系结构的平台无关性、语言无关性和人机交互性能。

  电子商务和ERP的集成框架。传统的应用系统大都不太灵活,它们都建立在点到点的解决方案的基础上,需要程序员大量的工作和一个比较长的开发周期。造成大量昂贵硬编码的单独应用,这些应用不能很好的集成也不能灵活的适应业务流程的改变。通过第2部分的分析,可以知道,功能组件化并具有良好集成性的Web services可解决这些问题。通过对Web服务平台的研究并结合电子商务和ERP的具体特点,我们提出的框架整体结构如图2所示:


  在该模式中我们不使用传统点到点的集成,而是在原有集成模式的基础上结合Web服务新技术,提出的一种新模式。该集成框架将企业后台的ERP系统和前台的电子商务系统集成到框架中。

 

SOAP消息代理是整个框架的信息处理中心,它根据预先定义好的应用消息转换机制将消息转换成目标应用需要的数据并存储到应用消息仓库中。除了保存和转发应用消息之外,消息代理还负责将不同的企业应用所保存的应用数据通过企业模型转化为一致的企业数据,保存到数据库中。

  客户端通过UDDI的标准和机制来搜寻需要的web服务,绑定找到的web服务并使用它提供的服务。另外,框架为企业进一步发展电子商务提供了接口,建立在UDDI基础上的Web services可以完成这一功能。

======================================================================================

Webservice原理解析:  我们来看下面这张图:

 

 

上面这张图就简单地演示了Webservice的工作原理,当我们开发出一个webservice后,我们会将其布署到服务器,这个web service会向外暴露一个wsdl文件。通过这个文件,客户端就知道服务器向外提供了哪些服务和需要哪些参数。

客户端通过get请求可以得到wsdl文件,也就知道服务器提供的方法和参数了,然后客户端会通过webservice提供的工具类(通常为wsdltojava生成相应的类)。  接下来,客户端会向webservice发送一个soap请求,这个soap请求实际上就是一段xml代码,然后server接收到soap请求,然后进行相应的处理,并将响应结果以soap 方式发送回客户端。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电动车插头太紧了插不到底怎么办 宜家沙发不能更换布套怎么办 苹果官网买的无线充坏了怎么办 苹果官网上买的耳机坏了怎么办 led灯开关关掉了闪烁是怎么办 我朋友借的网贷光给我打电话怎么办 电脑上的文件变成了图片查看怎么办 外卖店打印机纸卡住打不开了怎么办 微信撤回图片留下一堆代码怎么办 拼多多砍价免费拿砍不到0元怎么办 一岁三个月宝宝老足拉肚子怎么办丶 想打好关系送礼发红包不敢收怎么办 我在相亲市场太受欢迎了怎么办小说 有人报警说我诈骗警察说立案怎么办 微信账号长时间未登录不想要怎么办 手机号注销了百度云登录不了怎么办 申请百度云账号的手机不用了怎么办 新注册的微信号显示账号异常怎么办 注册公众号说邮箱被占用了怎么办 向钱贷登录手机号换了怎么办 qq号绑定的手机号码换了怎么办 用手机号注册的支付宝换号了怎么办 支付宝转的账户手机号消号了怎么办 激活微信账号手机号写错了怎么办 大学试卷没有写名字和考号怎么办 公司被注销了公众号还想要怎么办 公司认证的公众号公司注销了怎么办 信而富注册手机号码不用了怎么办 信而富本时段额度已放完怎么办 知道qq号密码账号忘了怎么办 扣扣绑定的手机号被别人用了怎么办 我的手机号被别人绑定了快手怎么办 微信密码忘记了没绑定手机号怎么办 扣扣绑定银行卡忘记密码了怎么办 扣扣忘记密码了又换手机号了怎么办 微信订阅号里有删除后的信息怎么办 申请微信公众号邮箱已被占用怎么办 公众号验证没有对公账户怎么办 qq密码忘记了怎么办手机绑定没有 我的扣扣怎么申诉都找不回来怎么办 装修装的不好又没有签合同怎么办