简述SOAP协议「建议收藏」

简述SOAP协议「建议收藏」8个月过去了,依旧清楚的记得研究生复试时,老师问我SOAP协议是啥(当时还不知道这个协议的名字到底该怎么写),今天偶然之间看见了一篇博客提到了SOAP(见下图),于是就查了一下SOAP协议。SOAP是基于XML的简易协议,可使应用程序在HTTP之上进行信息交换。更简单地说:SOAP是用于访问网络服务的协议。什么是SOAP?SOAP指简易对象访问协议SOAP是一种…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

8个月过去了,依旧清楚的记得研究生复试时,老师问我SOAP协议是啥(当时还不知道这个协议的名字到底该怎么写),今天偶然之间看见了一篇博客提到了SOAP(见下图),于是就查了一下SOAP协议。
在这里插入图片描述

SOAP 是基于 XML 的简易协议,可使应用程序在 HTTP 之上进行信息交换。
更简单地说:SOAP 是用于访问网络服务的协议

什么是 SOAP?

  • SOAP 指简易对象访问协议
  • SOAP 是一种通信协议
  • SOAP 用于应用程序之间的通信
  • SOAP 是一种用于发送消息的格式
  • SOAP 被设计用来通过因特网进行通信
  • SOAP 独立于平台
  • SOAP 独立于语言
  • SOAP 基于 XML
  • SOAP 很简单并可扩展
  • SOAP 允许您绕过防火墙
  • SOAP 将被作为 W3C 标准来发展

SOAP是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。 SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP)、简单邮件传输协议(SMTP)、多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。

SOAP协议可以简单地理解为:SOAP=RPC+HTTP+XML,从而允许服务提供者和服务客户经过防火墙在Internet上进行通信交互。

  • HTTP作为通信协议
  • RPC(Remote Procedure Call Protocol,远程过程调用协议)作为一致性的调用途径
  • XML作为数据传送的格式
  • SOAP封装(envelop):定义了一个框架,描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们;
  • SOAP编码规则(encoding rules):定义了一种序列化机制,用于表示应用程序需要使用的数据类型的实例;
  • SOAP RPC表示(RPC representation):定了一个协定,用于表示远程过程调用和应答;
  • SOAP绑定(binding):定义了SOAP使用哪种协议交换信息。使用HTTP、TCP、UDP都可以。

使用SOAP的原因

SOAP 提供了一种标准的方法,使得运行在不同的操作系统、使用不同的技术和编程语言的应用程序可以互相进行通信。

SOAP的优点

  • 可扩展:SOAP 无需中断已有的应用程序, SOAP 客户端、 服务器和协议自身都能发展,而且SOAP 能极好地支持中间介质和层次化的体系结构。
  • 简单:客户端发送一个请求,调用相应的对象, 然后服务器返回结果。这些消息是XML 格式的,并且封装成符合HTTP 协议的消息。因此,它符合任何路由器、 防火墙或代理服务器的要求。
  • 完全和厂商无关:SOAP可以相对于平台、 操作系统、 目标模型和编程语言独立实现。另外,传输和语言绑定以及数据编码的参数选择都是由具体的实现决定的。
  • 与编程语言无关:SOAP 可以使用任何语言来完成,只要客户端发送正确SOAP 请求( 即传递一个合适的参数给一个实际的远端服务器)。SOAP 没有对象模型,应用程序可以捆绑在任何对象模型中。
  • 与平台无关:SOAP 可以在任何操作系统中无需改动正常运行

SOAP和HTTP有什么区别?

二者都是底层的通信协议

请求包的格式不同:SOAP是XML格式,HTTP是纯文本格式
SOAP可以传递结构化的数据,HTTP只能传输纯文本数据
SOAP相对HTTP(post/get)由于要进行XML解析,速度可能会有所降低

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157812.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号