什么是SOAP?SOAP有什么用?什么时候会用到SOAP?[通俗易懂]

什么是SOAP?SOAP有什么用?什么时候会用到SOAP?[通俗易懂]什么是SOAPSOAP(SimpleObjectAccessProtocol)一般指简单对象访问协议,简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语

大家好,又见面了,我是你们的朋友全栈君。

什么是SOAP

SOAP(Simple Object Access Protocol)一般指简单对象访问协议,简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息.## 核心技术  SOAP采用了已经广泛使用的两个协议:HTTP 和XML(标准通用标记语言下的一个子集)。HTTP用于实现 SOAP 的RPC 风格的传输, 而XML 是它的编码模式。采用几行代码和一个XML 解析器, HTTP 服务器( MS 的 IIS 或 Apache) 立刻成为SOAP 的 ORBS。SOAP 通讯协议使用 HTTP 来发送XML 格式的信息。HTTP与RPC 的协议很相似,它简单、 配置广泛,并且对防火墙比其它协议更容易发挥作用。HTTP 请求一般由 Web 服务器软件(如 IIS 和Apache)来处理, 但越来越多的应用服务器产品正在支持HTTP。XML 作为一个更好的网络数据表达方式( NDR)。SOAP 把 XML 的使用代码化为请求和响应参数编码模式, 并用HTTP 作传输。具体地讲, 一个SOAP 方法可以简单地看作遵循SOAP编码规则的HTTP请求和响应, 一个 SOAP终端则可以看作一个基于HTTP 的URL, 它用来识别方法调用的目标。像CORBA/ IIOP一样, SOAP不需要具体的对象绑定到一个给定的终端, 而是由具体实现程序来决定怎样把对象终端标识符映像到服务器端的对象。

优点

1.可扩展的。SOAP 无需中断已有的应用程序, SOAP 客户端、 服务器和协议自身都能发展。而且SOAP 能极好地支持中间介质和层次化的体系结构。

2.简单的。客户端发送一个请求,调用相应的对象, 然后服务器返回结果。这些消息是XML 格式的,并且封装成符合HTTP 协议的消息。因此,它符合任何路由器、 防火墙或代理服务器的要求。

3.完全和厂商无关。SOAP可以相对于平台、 操作系统、 目标模型和编程语言独立实现。另外,传输和语言绑定以及数据编码的参数选择都是由具体的实现决定的。

4.与编程语言无关。SOAP 可以使用任何语言来完成,只要客户端发送正确SOAP 请求( 也就是说, 传递一个合适的参数给一个实际的远端服务器)。SOAP 没有对象模型,应用程序可以捆绑在任何对象模型中。

5.与平台无关。SOAP 可以在任何操作系统中无需改动正常运行。

Why SOAP?

对于应用程序开发来说,使程序之间进行因特网通信是很重要的。

目前的应用程序通过使用远程过程调用(RPC)在诸如 DCOM 与 CORBA 等对象之间进行通信,但是 HTTP 不是为此设计的。RPC 会产生兼容性以及安全问题;防火墙和代理服务器通常会阻止此类流量。

通过 HTTP 在应用程序间通信是更好的方法,因为 HTTP 得到了所有的因特网浏览器及服务器的支持。SOAP 就是被创造出来完成这个任务的。

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

参考

https://blog.csdn.net/baidu_25340817/article/details/82253826

https://www.w3school.com.cn/soap/soap_intro.asp

http协议与soap协议之间的区别 https://blog.csdn.net/ttxs99989/article/details/81294958

https://baike.baidu.com/item/简单对象访问协议/3841505

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155054.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月3日 下午10:36
下一篇 2022年7月3日 下午10:46


相关推荐

  • 钓鱼网站php,偶遇钓鱼网站的一次代码审计「建议收藏」

    钓鱼网站php,偶遇钓鱼网站的一次代码审计「建议收藏」偶遇一个钓鱼邮件中的钓鱼网站,并与年华大佬做了代码审计。据说近期全国出现多起钓鱼邮件事件,主要以各大高校为主,已有不少人上当,还需多加注意。分析钓鱼网站钓鱼网站采用常用空间钓鱼CMS搭建,可通过百度搜索下载源码。源码观察源码发现,源码中存在360safe防护机制,无法通过正常方式进行攻击。分析猜测钓鱼网站后台管理页面地址,发现地址为无法知道用户名密码,分析源码,查看是否存在绕过。观察index…

    2022年8月24日
    9
  • AjaxPro使用说明[通俗易懂]

    AjaxPro使用说明[通俗易懂]目录AjaxPro使用说明    1目录    2修改历史纪录    31、什么是Ajax    42、为什么使用Ajax    43、Ajax应用场景    44、Ajax开发框架    55、AjaxPro说明    66、AjaxPro实例说明    62.1、添加AjaxPro.dll应用    62.2、配置web.config    82…

    2022年7月12日
    18
  • 左值和右值、左值引用与右值引用、移动语句(2)「建议收藏」

    以下来自IBM知识中心表达式可以分为以下值类别之一:左值Lvalue:如果表达式不是const限定的,则表达式可以出现在赋值表达式的左侧。 x值:要过期的右值引用。 右值(Prvalue)rvalue:非xvalue表达式,仅出现在赋值表达式的右侧。Rvalues包括xvalues和prvalues。Lvalues和xvalues可以称为glvalues。Note:类(p…

    2022年4月8日
    52
  • 【elasticsearch系列】windows安装IK分词器插件[通俗易懂]

    【elasticsearch系列】windows安装IK分词器插件[通俗易懂]环境github下载:https://github.com/medcl/elasticsearch-analysis-ik/releases注意,IK分词器插件要与ES版本保持一致;有的小伙伴在GitHub上下载插件时,没有发现与ES相对应的版本,可以切换到Tags中选择分支版本;例如Branchs列表中仅可能存在主版本号;切换到右侧Tags中查找对应的版本即可;小编这里选择的7.8.0的版本;安装IK解压缩后拷贝到ElasticSearch安装目录的plugins文件夹下,默认情况该

    2022年6月18日
    27
  • 移动端开发需要注意事项

    移动端开发需要注意事项1.webkit内核中的一些私有的meta标签<metacontent=”width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0″name=”viewport”><metacontent=”yes”name=”apple-mobile-web-app-capable”>…

    2022年6月24日
    28
  • Pytest(17)运行未提交的git(pytest-picked)

    Pytest(17)运行未提交的git(pytest-picked)前言我们每天写完自动化用例后都会提交到git仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交git仓库的用例。pytest-picked插件可以

    2022年7月29日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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