我试图理解
- 究竟什么是 Web 服务
- 它们是如何使用的
我所知道的是它们是用 SOAP/XML 编码的,并且它们是独立于语言的,这意味着我可以用 Java 编写一个程序并创建一个 web 服务,并且让任何用户使用任何程序来调用它。但我希望进一步了解底层细节。
我试图理解
我所知道的是它们是用 SOAP/XML 编码的,并且它们是独立于语言的,这意味着我可以用 Java 编写一个程序并创建一个 web 服务,并且让任何用户使用任何程序来调用它。但我希望进一步了解底层细节。
顾名思义,Web Service
通常是通过网络(或通过网络)提供的服务。这样做的主要目的是在两个设备之间进行通信。一个非常愚蠢的示例可能是假设您拥有一个站点,并且您希望在站点的用户个人资料页面中显示当天的当前温度。以一种非常简单的方式,您可以使用一些特定参数(您的位置/用户凭据或其他)调用 Web 服务并获取温度作为响应。现在你可以自由地用它做任何事情。因此,您无需自己处理温度计算,而是依靠此 Web 服务为您完成这项工作,在这里您实际上扮演了一段client
时间,为您提供服务的人变成了provider
.
通常,它使用遵循SOAP标准的基于 XML 的标准化消息传递系统。因此,在更广泛的意义上,它就像您作为客户端通过发送 XML(格式化)消息并接收相应的 XML 响应来调用 Web 服务。
现在XML
,作为您(客户)和提供者之间沟通的主要方式,你们中没有人真正关心彼此的实现细节。因此,虽然您已经用 Java 编写了所有客户端代码,但提供者很可能使用不同的语言,例如 C# 或其他语言。所以客户端和服务器是完全独立的。
通常这两者(客户端-服务器)之间的合同是在一个名为WSDL(Web 服务描述语言)的文件中定义的,但是还有其他方法,例如REST 兼容的 Web 服务。互联网上有很多可用的材料,可以帮助您快速入门。