WebServices - 教程
-
-
WebServices 是什么
不同的书籍和不同的组织对 WebServices 提供了不同的定义。其中一些列在这里。-
WebServices 是可以在 Internet 上使用并使用标准化 XML 消息传递系统的任何软件。XML 用于对与 WebServices 的所有通信进行编码。例如,客户端通过发送 XML 消息调用 WebServices ,然后等待相应的 XML 响应。由于所有通信都是在 XML 中进行的,因此 WebServices 不依赖于任何一种操作系统或编程语言——Java 可以与 Perl 通信;Windows 应用程序可以与 Unix 应用程序通信。
-
WebServices 是自包含的、模块化的、分布式的、动态的应用程序,可以通过网络进行描述、发布、定位或调用以创建产品、流程和供应链。这些应用程序可以是本地的、分布式的或基于 Web 的。WebServices 建立在 TCP/IP、HTTP、Java、HTML 和 XML 等开放标准之上。
-
WebServices 是基于 XML 的信息交换系统,它使用 Internet 进行直接的应用程序到应用程序交互。这些系统可以包括程序、对象、消息或文档。
-
WebServices 是用于在应用程序或系统之间交换数据的开放协议和标准的集合。以各种编程语言编写并在各种平台上运行的软件应用程序可以使用 WebServices 通过计算机网络(如 Internet)以类似于单台计算机上的进程间通信的方式交换数据。这种互操作性(例如,Java 和 Python,或 Windows 和 Linux 应用程序之间)是由于使用了开放标准。
总而言之,一个完整的网络服务是,因此,任何服务 --
可通过 Internet 或专用(内联网)网络使用
-
使用标准化的 XML 消息传递系统
-
不依赖于任何一种操作系统或编程语言
-
通过通用 XML 语法进行自我描述
-
可通过简单的查找机制发现
-
-
WebServices 的组件
基本的 WebServices 平台是 XML + HTTP。所有标准 WebServices 都使用以下组件工作 --
SOAP(简单对象访问协议)
-
UDDI(通用描述、发现和集成)
-
WSDL(网络服务描述语言)
所有这些组件都已在WebServices 架构一章中讨论过。 -
-
WebServices 如何工作?
WebServices 通过使用开放标准(如 HTML、XML、WSDL 和 SOAP)实现各种应用程序之间的通信。WebServices 需要以下帮助 --
用于标记数据的 XML
-
SOAP 传输消息
-
WSDL 来描述服务的可用性。
您可以在 Solaris 上构建基于 Java 的 WebServices ,该服务可从在 Windows 上运行的 Visual Basic 程序访问。您还可以使用 C# 在 Windows 上构建新的 WebServices ,这些服务可以从基于 JavaServer Pages (JSP) 并在 Linux 上运行的 Web 应用程序调用。 -
-
例子
考虑一个简单的帐户管理和订单处理系统。会计人员使用使用 Visual Basic 或 JSP 构建的客户端应用程序来创建新帐户并输入新的客户订单。该系统的处理逻辑是用 Java 编写的,驻留在 Solaris 机器上,它还与数据库交互以存储信息。执行此操作的步骤如下 --
客户端程序将帐户注册信息捆绑到 SOAP 消息中。
-
此 SOAP 消息作为 HTTP POST 请求的正文发送到 WebServices 。
-
WebServices 解包 SOAP 请求并将其转换为应用程序可以理解的命令。
-
应用程序根据需要处理信息,并以该客户的新唯一帐号作为响应。
-
接下来,WebServices 将响应打包到另一个 SOAP 消息中,该消息发送回客户端程序以响应其 HTTP 请求。
-
客户端程序解包 SOAP 消息以获取帐户注册过程的结果。
-