SOAP 与 WSDL 的区别

源内容(英文)

Web 服务(Web Service)是一种让不同的应用程序或系统在互联网上进行通信并共享数据的方式,即使它们构建在不同的平台或语言之上。SOAP 和 WSDL 都是此类 Web 服务中使用的基于可扩展标记语言(XML)的技术。SOAP 代表简单对象访问协议,定义了用于通信的消息协议。WSDL 代表 Web 服务描述语言,用于描述 Web 服务的能力以及如何访问它们。

简单对象访问协议 (SOAP)

它是一种基于 XML 的网络协议,用于在节点之间交换结构化数据。它运行在应用层协议(如 HTTPSMTP)之上,用于格式化和传输消息。它确保消息是独立于平台的,并且可以被不同的系统读取。

!SOAPSimple Object Access Protocol (SOAP)

SOAP 消息的架构

其架构中包含 4 个层:

  • Envelope(信封):包装整个消息。
  • Header(标头)(可选):包含身份验证等信息。
  • Body(主体):保存实际数据或请求。
  • Fault(错误)(可选):提供错误处理信息。

示例

让我们考虑一个 SOAP 消息示例:

> <soapenv:Envelope xmlns:soapenv="https://schemas.xmlsoap.org/soap/envelope/"

>

> xmlns:gfg="https://www.geeksforgeeks.org/webservice/">

>

>

>

> ABC123XYZ

>

>

>

>

>

>

>

> 12345

>

>

>

>

>

>

当客户端想要从 Web 服务获取文章详情时,它会发送一条 SOAP 消息,其中在 Body 中包含请求(例如 ArticleID),并在 Header 中包含 AuthToken。服务器检查令牌以进行身份验证,处理请求,并发送回一条 SOAP 响应,在响应 Body 中包含请求的文章详情。

SOAP 的特性

它比 WSDL 具有更多的支持性,因为它具有三个重要特性:

  • 独立性: SOAP 可以跨不同的操作系统和编程语言工作。
  • 中立性: 它可以使用各种传输协议,如 HTTP、SMTP 或 TCP。
  • 可扩展性: SOAP 允许通过标头添加额外的功能(如安全性或事务),而不会破坏现有功能。

> 阅读更多关于 简单对象访问协议 (SOAP) 的内容。

Web 服务描述语言 (WSDL)

它是由 IBMMicrosoft 共同开发的,并于 2007 年 6 月 26 日W3C 确认。它是一种基于 XML 的接口定义语言,用于描述 Web 服务的功能。通常,典型的 WSDL 定义了与基于 XML 的服务的实现和通信过程。

!WSDLWSDL Document Structure

WSDL 文档的架构

其架构中包含四个主要元素:

  • **** :指定 Web 服务将使用的数据类型(使用 XML Schema)。
  • **** :描述在每个操作中交换的各个数据部分。
  • **** :列出可用的操作以及它们用于输入和输出的消息。
  • **** :指示与每个操作关联的通信协议和消息格式。

示例

下面给出一个简单的示例,用于理解如何在 WSDL 中定义消息和操作:

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

在此,

  • simpleRequest:包含一个字符串参数的输入消息。
  • simpleResponse:包含一个字符串结果的输出消息。
  • SimpleService:服务接口。
  • getResult:正在执行的操作(例如查找或计算)。

> 阅读更多关于 Web 服务描述语言 (WSDL) 的内容。

SOAP

WSDL

它是基于 XML 的消息协议。

它是基于 XML 的接口定义语言。| 它在架构中由四层组成。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/49713.html
点赞
0.00 平均评分 (0% 分数) - 0