什么是Web服务以及它们如何使用?

时间:2013-08-28 12:20:19

标签: xml web-services rest soap

我正在努力理解

  1. 究竟什么是网络服务
  2. 如何使用
  3. 我所知道的是它们是用SOAP / XML编码的,它们与语言无关,这意味着我可以用Java编写程序并创建一个Web服务,并让任何用户都可以调用它。但我希望进一步了解低级细节。

1 个答案:

答案 0 :(得分:3)

顾名思义Web Service通常是通过网络(或通过网络)提供的服务。其主要目的是在两个设备之间进行通信。一个非常愚蠢的例子可能是假设您拥有一个网站,并且在您网站的用户个人资料页面中,您想要显示当天的当前温度。以最简单的方式,您可以使用一些特定参数(您的位置/用户凭据或其他)调用Web服务并获得响应温度。现在你可以自由地做任何事了。因此,您不必处理自己的温度计算,而是依靠此Web服务为您完成工作,此处您实际上充当client,而为您提供服务的人将成为provider

通常,它使用遵循SOAP标准的标准化基于XML的消息传递系统。因此,从更广泛的意义上讲,它就像您作为客户端通过发送XML(格式化)消息并接收相应的XML响应来调用Web服务。

现在XML,作为您(客户端)和提供者之间进行通信的主要方式,您们中没有人真正关心彼此的实现细节。因此,当您用Java编写所有客户端代码时,提供程序很可能使用不同的语言,例如C#或其他任何语言。所以客户端和服务器是完全独立的。

这两者之间的合同(客户端 - 服务器)通常在名为WSDL的文件(Web服务描述语言)中定义,但是还有其他方法,例如REST-compliant Web services。互联网上有大量的资料可以帮助您快速上手。

在Java中here是一个使用Net Beans IDE创建和consuming Web服务的非常简单的教程。