一、SOAP简单对象访问协议讲解

今天给大家讲讲SOAP的基本知识。下节给大家演示创建基于SOAP的Web Service

更多SOA文章请查看我的个人博客

首先,让我来简单一下入门SOAP所需的知识点。

一、基本概念

⊿SOAP:(Simple Object Access Protocol) 简单对象访问协议。

⊿SOAP是一种简单的基于XML的协议,它使应用程序通过HTTP来交换信息。

⊿SOAP协议与普通的XML或JSON相比,是Web Service通信协议的事实标准。

⊿SOAP协议适用于描述数据类型多、关系复杂的应用。 ⊿XML或JSON适用于简单、快速开发的场合。

二、SOAP的特点

⊿SOAP 是一种通信协议

⊿SOAP 用于应用程序之间的通信

⊿SOAP 被设计用来通过互联网进行通信

⊿SOAP 独立于平台 ⊿SOAP 独立于语言

⊿SOAP 基于XML ⊿SOAP 很简单并可扩展

⊿SOAP 允许您绕过防火墙。

三、SOAP消息的构成

一条 SOAP 消息就是一个普通的 XML 文档,包含下列元素:

⊿必需的Envelope元素,可把此 XML 文档标识为一条SOAP消息

⊿可选的Header元素,包含头部信息

⊿必需的Body元素,包含所有的调用和响应信息

⊿可选的Fault元素,提供有关在处理此消息所发生错误的信息

四、SOAP消息格式

五、SOAP消息示例

⊿Envelope元素:必需的SOAP的Envelope元素是SOAP消息的根元素。它可把XML文档定义为SOAP消息。

⊿Header元素:可选的SOAP Header元素可包含有关SOAP消息的应用程序专用信息(比如认证、支付等)。

⊿Body元素:必需的SOAP Body元素可包含打算传送到消息最终端点的实际SOAP消息。

Body元素示例

六、SOAP over HTTP

⊿SOAP消息的传输通常使用HTTP协议进行绑定。

⊿可使用HTTP POST或HTTP GET请求,一般使用HTTP POST请求。

⊿通过POST方法,SOAP信封将变为HTTP请求消息的数据部分。

⊿在HTTP响应中,将会返回SOAP响应。

请求绑定示例

响应绑定示例

http://mrpenguin.duapp.com/
 
分类: SOA

一、SOAP简单对象访问协议讲解的更多相关文章

  1. SOAP 简单对象访问协议

    webService三要素 SOAP.WSDL(WebServicesDescriptionLanguage).UDDI(UniversalDescriptionDiscovery andIntegr ...

  2. SOAP(简单对象访问协议)

    ylbtech-Miscellaneos:SOAP(简单对象访问协议) A,返回顶部 1, 简单对象访问协议是交换数据的一种协议规范,是一种轻量的.简单的.基于XML(标准通用标记语言下的一个子集)的 ...

  3. 简单对象访问协议(Simple Object Access Protocol),PHP调用SOAP过程中的种种问题;php的soap无故出错的真凶:wsdl缓存

       webservice的一种常用实现方式就是soap了.我们后端的JAVA也是用soap的原理实现的.那么我显然首先要上网上搜搜关于soap的文章.最早进入实现的是PHP写的nusoap类.这个n ...

  4. SOAP、SOCKET协议

    一.SOAP( SOAP:Simple Object Access Protocol) 简单对象访问协议,简单对象访问协议(SOAP)是一种轻量的.简单的.基于 XML 的协议,它被设计成在 WEB ...

  5. IMAP(Internet Mail Access Protocol,Internet邮件访问协议)以前称作交互邮件访问协议(Interactive Mail Access Protocol)。

    IMAP(Internet Mail Access Protocol,Internet邮件访问协议)以前称作交互邮件访问协议(Interactive Mail Access Protocol).IMA ...

  6. LDAP - 轻量目录访问协议

    LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP

  7. atitit.网络文件访问协议.unc smb nfs ftp http的区别

    atitit.网络文件访问协议.unc smb nfs ftp http的区别 1. 网络文件访问协议1 2. NETBios协议  2 3. SMB(Server Message Block)2 3 ...

  8. 如何将Javaweb工程的访问协议由http改为https及通过域名访问?

    将javaweb工程的http访问协议更改为https,需要做一下几部操作: 通过jre生成证书 调整tomcat的配置 调整工程的web.xm配置 具体详细过程如下: 一.生成证书 打开cmd切换到 ...

  9. LDAP-轻量级目录访问协议(统一认证)

    概念 LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP. 参考资料 LDAP概念和原理介绍 我花了一个五一终于搞懂 ...

随机推荐

  1. handlebar的一些用法——个人使用总结

    handlebar的一些用法 概述与介绍 Handlebars 是 JavaScript 一个语义模板库,通过对view和data的分离来快速构建Web模板.它采用"Logic-less t ...

  2. 用java字节码解释i++和++i(转)

    这几天抽着一些时间,把Java的class文件结构研究了一下,再后来就想起了这个令人厌烦的问题,想从字节码指令的角度看看,java到底是怎么处理这个的 先看一段java代码 package bishi ...

  3. WebService返回DataTable问题

    今天做项目时,想在WebService中返回DataTable,在单位没成功,看网上有人说datable在.net1.1中是没有序列化的,不能直接在webservice中返回,可以返回dataset. ...

  4. Git批量删除

    Git批量删除 git的改动都需要stage过程后才能commit.当git中有大量改动时就需要能够批量操作在方便.改动分三种: modify: 有文件修改 add: 有文件增加 rm: 有文件删除 ...

  5. 聊聊单元測试(一)——EasyMock

    一.单元測试是保证软件质量的重要方法. 单元測试是对系统中某个模块功能的验证,但我们总会遇到这样那样的问题,导致測试代码非常难编写.最直接的一个原因便是强耦合关系,被測试者依赖一些不easy构造,比較 ...

  6. C#创建和初始化类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace C_编辑 ...

  7. Hibeernate中的两种分页方式

    1. return getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(S ...

  8. MVC创建XML,并实现增删改

    原文:MVC创建XML,并实现增删改 如果创建如下的XML: <?xml version="1.0" encoding="utf-8" standalon ...

  9. 【翻译自mos文章】SYS_OP_C2C 导致的全表扫描(fts)/全索引扫描

    SYS_OP_C2C 导致的全表扫描(fts)/全索引扫描 參考原文: SYS_OP_C2C Causing Full Table/Index Scans (Doc ID 732666.1) 适用于: ...

  10. php 解析xml 的四种方法

    XML处理是开发过程中经常遇到的,PHP对其也有很丰富的支持,本文只是对其中某几种解析技术做简要说明,包括:Xml parser, SimpleXML, XMLReader, DOMDocument. ...