SOAP简介

原创 2006年06月02日 23:09:00

现在的企业解决方案要求兼容能力
可支持不同的系统平台、数据格式、多种连接方式
实现的系统是松散耦合、跨平台的、与语言无关的、与特定接口无关的,而且要提供对Web应用程序的可靠访问。

SOAP简介
简单对象访问协议,以XML作为数据传送方式的一种协议
可分为两层,数据表示层通信层,数据表示层采用符合SOAP规范的XML数据表示

SOAP可采用的通信协议
1.可以是HTTP/HTTPS协议
2.也可以是SMTP/POP3协议
3.还可以是为应用而专门设计的特殊通信协议。

SOAP系统有两种工作方式:
1. RPC
2. Message-Oriented(在Microsoft的文档中称为Document-Oriented)
这是一种可以利用XML交换更为复杂的数据结构的应用,常以SMTP作为传输协议。

可以把SOAP RPC简单理解为这样一个开放的协议:
 SOAP = RPC + HTTP + XML 具有以下特征
1. 采用HTTP作为通信协议,采用客户/服务模式
2. RPC作为统一的远程方法调用途径
3. XML作为数据传送的格式

SOAP RPC工作原理和Web请求/响应模式的异同:
都以HTTP协议作为通信协议
Web传输的是HTML数据;SOAP RPC模式中传输的是符合SOAP规范的XML数据。

SOAP客户访问SOAP服务的流程:
1. 客户程序创建一个XML文档,它包含
a) 提供服务的服务器的URI、
b) 客户请求调用的方法名和参数信息
如果参数是对象,必须进行序列化操作
2. 服务器接收到客户程序发来的XML文档,对其进行解析(如果参数是对象,对其进行反序列化操作)然后执行客户请求的方法
3. 执行完方法后,如果方法的返回值是对象,先对其进行序列化操作,然后把返回值以XML文档的形式返回给客户
4. 客户接收到返回的XML文档,(如果返回值是对象,先反序列化),获得返回值

SOAP客户和SOAP服务之间采用符合SOAP规范的XML数据进行通信,形式如下:
<?xml version=”1.0” encoding=”UTF-8”>
<soapenv:Envelope
    xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
    xmlns:xsd=”http://www.w3.org/2001/XMLSchema”
    xmlns=”http://www.w3.org/2001/XMLSchema-instance”>
   <soapenv:Body>
      <sayHelloResponse soapenv:encodingStyle = ”http://schemas.xmlsoap.org/soap/encoding/”>
         <sayHelloReturn xsi:type=”xsd:string”>
             Hello:weiqin
         </sayHelloReturn>
      </sayHelloResponse>
   </soapenv:Body>
</soapenv:Envelop>

 这是一个SOAP服务向SOAP客户发回的相应数据。
 根元素:<soapenv:Envelope> 可以包含<soapenv:Head><soapenv:Body>子元素
 <Body>元素下包含了具体的客户请求和服务响应数据

HTTP与SOAP协议简介

SOAP简单的理解,就是这样的一个开放协议SOAP=RPC+HTTP+XML:采用HTTP作为底层通讯协议;RPC作为一致性的调用途径,XML作为数据传送的格式,允许服务提供者和服务客户经过防火墙在I...
  • daisyp
  • daisyp
  • 2013年06月25日 16:00
  • 3033

[工具使用] SOAP UI 测试

在日常开发中使用SOAP UI 测试web service 报文。 SOAP UI 基本术语   1 连接数据库 思路:通过SOAP UI的TestSuite 的"Custom Prope...
  • lihe2008125
  • lihe2008125
  • 2015年06月08日 12:26
  • 8292

SOAP消息机制简介

原文地址:http://www.cnblogs.com/tyb1222/archive/2012/03/01/2375532.html   SOAP(Simple Object Access Pr...
  • wangchenggong1988
  • wangchenggong1988
  • 2013年09月06日 23:47
  • 661

SOAP消息机制简介

SOAP(Simple Object Access Protocol,简单对象访问协议)作为一种信息交互协议在分布式应用中非常广泛,如WebService。在使用.Net开发WebService时候,...
  • Erica_1230
  • Erica_1230
  • 2016年01月23日 22:27
  • 266

SOAP消息机制简介

转自:http://www.cnblogs.com/tyb1222/archive/2012/03/01/2375532.html SOAP(Simple Object Access...
  • shellching
  • shellching
  • 2016年03月15日 10:40
  • 600

SOAP引擎简介

Axis本质上就是一个SOAP引擎,提供创建服务器端、客户端和网关SOAP操作的基本框架。Axis目前版本是为Java编写的,不过为C++的版本正在开发中。但Axis并不完全是一个SOAP引擎,它还包...
  • Karl_Fate
  • Karl_Fate
  • 2017年04月05日 14:14
  • 220

基于Java的webservice创建与soap方式调用

一、创建(服务端) 建立普通类,代码: 浏览器键入http://localhost:8083/HelloWorld 二、调用(客户端) 1、利用SoapUI获取请求报文 创建S...
  • u013258447
  • u013258447
  • 2017年05月09日 11:17
  • 1854

SOAP和RESTful 框架的 简介、对比和区别

SOAP简单对象访问协议(Simple Object Access Protocol,SOAP)是一种基于 XML 的协议,可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP),简...
  • caisini_vc
  • caisini_vc
  • 2015年09月15日 12:10
  • 6753

C#的Soap调用

想写个远程调用HTTP的功能,考虑用soap。 一:.Net FrameWork2.0 : C#支持了对Soap的调用类的自动生成,象这样:在工程上右键点击“Add Web Reference...
  • trobin
  • trobin
  • 2013年01月31日 09:52
  • 3064

SOAP消息机制简介

本文转自: http://www.cnblogs.com/tyb1222/archive/2012/03/01/2375532.html SOAP消息机制简介   SO...
  • cqulyk
  • cqulyk
  • 2015年09月03日 22:42
  • 246
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SOAP简介
举报原因:
原因补充:

(最多只允许输入30个字)