什么是Web Service?,什么是WSDL,该文件的作用是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是Web Service?,什么是WSDL,该文件的作用是什么?相关的知识,希望对你有一定的参考价值。

传统上,我们把计算机后台程序(Daemon)提供的功能,称为"服务"(service)。比如,让一个杀毒软件在后台运行,它会自动监控系统,那么这种自动监控就是一个"服务"。通俗地说,"服务"就是计算机可以提供的某一种功能。
根据来源的不同,"服务"又可以分成两种:一种是"本地服务"(使用同一台机器提供的服务,不需要网络),另一种是"网络服务"(使用另一台计算机提供的服务,必须通过网络才能完成)。
举例来说,我现在有一批图片,需要把它们的大小缩小一半。那么,我们可以把"缩放图片"看成是一种服务。你可以使用"本地服务",在自己计算机上用软件缩小图片,也可以使用"网络服务",将图片上传到某个网站,让服务器替你缩小图片,完成后再通过网络送回给你。这就好比,一件事你可以自己做,也可以交给另一个人去做。肚子饿了,你可以自己做饭,也可以打电话去订一份比萨,让店家替你做好送上门。
"网络服务"(Web Service)的本质,就是通过网络调用其他网站的资源。
举例来说,去年我写过一个"四川大地震图片墙",它能动态显示关于四川地震的最新图片。但是,所有的图片都不是储存在我的服务器上,而是来自flickr.com。我只是发出一个动态请求,要求flickr.com向我提供图片。这种情况下,flickr.com提供的就是一种Web service。如果我把图片都存放在本地服务器,不调用flickr.com,那么我就是在使用"本地服务"。
所以,Web service让你的网站可以使用其他网站的资源,比如在网页上显示天气、地图、twitter上的最新动态等等。

WSDL(Web Service Description Language)Web服务器描述语言是用XML文档来描述Web服务的标准,是Web服务的接口定义语言,由Ariba、Intel、IBM、MS等共同提出,通过WSDL,可描述Web服务的三个基本属性:
·服务做些什么——服务所提供的操作(方法)
·如何访问服务——和服务交互的数据格式以及必要协议
·服务位于何处——协议相关的地址,如URL
参考技术A Web Service:就是web 服务程序,你也看成是程序组件,以服务方式发布,供本系统或第三方系统调用。
wsdl:web service description language 即:web服务描述语言,你的webserice通过该协议可以供外部程序调用。
参考技术B http://baike.baidu.com/view/157153.htm

Sap web service接口改成https

参考技术A 1.背景介绍
因为项目当中用到了webservice接口,并且提供了一个公网地址给调用方使用,但是调用方在调用的时候一直报错,错误如下。

这个错误的原因是:
302 Found 是HTTP协议中的一个状态码(Status Code),可以简单的理解为该资源原本确实存在,但已经被临时改变了位置;或者换个说法,就是临时的存在于某个临时URL下。通常会发送Header来暂时重定向到新的新位置。
在我看了一下获取到的wsdl文件之后发现,我访问的地址是https,但是<wsdlsoap:addresslocation="http://*****"/>这个节点的值却是http所以把这个改成https就ok。
这是其中的一个错误,第二个错误就是报没有证书认证错误。这个就需要去获取证书了。http://www.cnblogs.com/enenen/p/6238504.html
这篇文章介绍了如何获取证书。最后将生成的证书放到java的security目录下。这样前面的工作就做好了。
2.调用方式介绍
1.先去http://cxf.apache.org下载apache-cxf-3.1.12.zip。然后设置环境变量。
2.然后用命令生成客户端代码wsdl2java -ant -client -d ClientDir hello_world.wsdl。
3.将wsdl文件中的地址改成https。
4.根据命令生成的客户端代码同时会生成一个测试demo.运行就ok了。

以上是关于什么是Web Service?,什么是WSDL,该文件的作用是什么?的主要内容,如果未能解决你的问题,请参考以下文章

初步理解一下:SOA, SOAP, Web Service, WSDL等

Sap web service接口改成https

VS2010 根据WSDL文件(java Web Service)生成.cs文件

SOAP/Web Service/WSDL关系

Web Service中的几个重要术语

(转)白痴理解的SOAP/Web Service/WSDL关系