`

转 --Http get,post,soap协议的区别

 
阅读更多

转载至http://www.cnblogs.com/c2303191/articles/1107027.html

1.Http作为web服务的首选协议,居有4大优点:
   1)http非常简单,以纯文本(超文本)形式编码的请求和响应组成
   2)http是无状态的。一旦发送了一个http请求,客户和服务器之间的连接信息就会被释放,有利于减少服务器资源的消耗。
   3)http的运行端口80,在大多数防火墙上是公开的
   4)行业认可。
  但是Http的缺点:
   1)缺少对异步消息的支持
   2)消息传输的不可靠性

2.HTTP-GET 和 HTTP-POST 的比较

这二者最大的区别在于数据是如何与要求的消息捆绑在一起的。

HTTP-GET的处理特征如下:

。将数据添加到URL

。利用一个问号(”?”)代表URL地址的结尾与数据的开端。

。每一个数据的元素以 名称/值 (name/value) 的形式出现。

。利用一个分号(“;”)来区分多个数据元素(原文是这样说的,但是我在传参数的时候都是用&分割两个参数的,待考证 )。

。 查询字符串的长度受到web浏览器和web服务器的限制(如IE最多支持2048个字符),适合传输简单数据,不适合传输大型数据集
        同时,它很不安全


HTTP-POST的处理特征如下:

。将数据包括在HTTP主体中。(名为entity body)传输的,这一部分用来传输表单信息,因此必须将
      Content-type设置为:application/x-www-form-urlencoded。

。 post设计用来支持web窗体上的用户字段同样的,数据的元素以 名称/值 (name/value) 的形式出现。

。但是每一个数据元素分别占用主体的一行。

。  但是:适合传输大型name/value类型数据但它不支持复杂数据类型,因为post没有定义传输数据结构的语义和规则

 

3)soap:是http post的一个专用版本,遵循一种特殊的xml消息格式
        Content-type设置为: text/xml
        任何数据都可以xml化

 

用webservice时候只知道webservice是通过soap协议传输的,但不知道soap是http的一个子类,在通过webservice获取网页调用IP时看到httpserlvetRequest就以为应该是网页的httprequest,不是项目服务器调用webservice的IP,看了这篇文章才知道原来是这样一回事,学习了。

 

分享到:
评论

相关推荐

    PHP HTTP客户端(GET POST SOAP SOCKET)

    GET和POST是HTTP协议中最基本的两种请求方法。GET用于获取资源,通常用于查询操作,请求参数显示在URL中;POST用于提交数据,适用于更新或创建资源,数据隐藏在请求体中。 在PHP中,可以使用cURL库或者file_get_...

    PHP SOAP http post get 函数

    利用php curl 实现http post get 包括 SOAP 的发送的函数。 函数包括解决Cookie问题。 实用强大的函数,有了这个函数,做采集或者模拟登陆都很轻松了!

    SOAP协议规范

    REST倾向于使用HTTP方法(如GET、POST、PUT、DELETE)直接映射资源操作,而SOAP则通过封装在XML中的操作调用来执行服务请求。 总结,SOAP协议规范是Web服务领域中的一个重要组成部分,它为跨平台、跨语言的数据交换...

    SOAP协议规范——SOAP详解

    相比之下,REST(Representational State Transfer)使用更简单的HTTP方法(如GET、POST、PUT、DELETE)和JSON或XML作为数据交换格式,更加轻量级和灵活。 7. **SOAP安全考虑:** SOAP可以通过HTTPS(HTTP over ...

    SOAP协议最新规范文档

    在这种情况下,SOAP消息通常作为HTTP请求的实体内容发送,并且可以利用HTTP的特性,如方法(GET、POST等)、状态代码和头部信息。 在SOAP消息中,XML名域前缀用于区分SOAP元素和应用程序特定的元素。例如,“SOAP-...

    QtSoap源码 仅供学习参考

    它使用HTTP协议来发送和接收SOAP消息。开发者可以通过设置URL、方法(GET或POST)以及任何必要的HTTP头来配置HTTP传输。 在学习QtSoap源码时,你应该关注以下几点: 1. **XML解析与生成**:QtSoap如何利用Qt的XML...

    03-Web服务实用技术(SOAP).pptx

    SOAP的设计目标是提供一种轻量级的解决方案,作为复杂分布式对象通信技术的替代品,它独立于任何特定的传输协议,通常与HTTP协议结合使用。 【SOAP 消息结构】 SOAP消息由三个主要部分组成: 1. **SOAP Envelope*...

    XmlHttpRequest对象直接访问与通过Soap协议访问WebSevice详解示例

    本示例将深入探讨如何使用XMLHttpRequest直接访问Web服务以及通过SOAP(Simple Object Access Protocol)协议进行访问。 首先,让我们了解XMLHttpRequest的基本用法。创建一个XMLHttpRequest实例,然后设置其...

    c/c++ 发送HTTP POST/GET请求50行代码搞定

    50行代码http发送Post/Get请求,直接在linux gcc编译即可使用,或在win下任意c/c++编译器都可

    C# WebService 客户端 服务器 Get Post

    总结,C# WebService客户端和服务器之间的通信是通过HTTP协议的GET和POST方法进行的,这使得跨平台、跨语言的数据交换变得简单。在实际开发中,理解并熟练运用这些知识能够帮助我们构建高效、安全的分布式系统。

    jax-ws jax-rs 分别创建soap和restful类型的webservice

    1. **定义资源类**:使用`@Path`注解定义资源类,该类的公共方法代表HTTP操作,如`@GET`、`@POST`等。 2. **使用数据绑定**:可以使用`@PathParam`、`@QueryParam`、`@HeaderParam`等注解处理请求参数。 3. **实体类...

    SOAP webserivce 和 RESTful webservice 对比及区别

    SOAP Web服务和RESTful Web服务是两种常见的Web服务交互方式,它们在设计理念、协议复杂度、数据格式和操作方式等方面存在显著的区别。 首先,SOAP(简单对象访问协议)是一种基于XML的协议,它允许不同系统之间的...

    qt-soap-webservice

    在描述中提到,此项目涉及到了http协议和xml技术。HTTP(HyperText Transfer Protocol)是互联网上应用最广泛的一种网络协议,用于传输超文本信息。XML(eXtensible Markup Language)则是用于存储和传输数据的标记...

    SoapUI-5.4.0-EB.dmg.zip

    它支持多种HTTP方法,如GET、POST、PUT和DELETE,以及处理JSON、XML等多种数据格式。 3. **功能测试**:SoapUI不仅限于单个请求的测试,还支持创建复杂的测试套件和测试用例。用户可以设定一系列操作,包括断言、...

    SOAP协议初级指南.pdf

    由于SOAP是基于HTTP协议进行传输的,开发者也需要了解HTTP协议的基本知识,比如HTTP请求方法(GET、POST、PUT、DELETE等)以及状态码的意义。 此外,由于SOAP消息是XML格式的,因此需要了解XML的语法、结构、命名...

    iOS之同步请求、异步请求、GET请求、POST请求

    在iOS开发中,网络请求是应用与服务器交互的重要方式,主要分为同步请求和异步请求,同时HTTP协议提供了两种常见的请求方法:GET和POST。理解这些概念及其在iOS中的实现对于构建用户友好的应用程序至关重要。 1. **...

    soap.war 和所需的activation.jar mail.jar soap.jar xerces.jar

    将mail.jar、soap.jar、activation.jar、xerces.jar放到tomcat/lib下面, tomcat运行时会自动加载tomcat/lib下的所有类库 ... Sorry, I don't speak via HTTP GET- you have to use HTTP POST to talk to me.

    gsoap http webapi

    gSOAP(Generic SOAP)是一个强大的开源工具,它为C/C++程序员提供了创建和使用Web服务的框架,尤其在HTTP协议和SOAP(Simple Object Access Protocol)协议的处理上表现出色。本篇文章将深入探讨如何使用gSOAP通过...

    Ajax调用SOAP-Web示例

    SOAP Web服务是一种基于HTTP协议的,提供远程调用功能的服务,它使用XML作为数据交换格式,能够跨平台、跨语言地进行通信。 首先,让我们理解Ajax调用的基本过程: 1. **创建XMLHttpRequest对象**:这是所有Ajax...

    在同一个系统里用cxf 实现SOAP 协议和RESTful风格 两种类型的webservice接口

    REST是一种轻量级的架构风格,它利用HTTP协议的基本操作(GET、POST、PUT、DELETE等)来操作资源。在CXF中实现RESTful接口,我们需要: 1. 定义资源类:创建一个Java类,该类的方法对应于HTTP操作,使用JAX-RS注解...

Global site tag (gtag.js) - Google Analytics