`
nicegege
  • 浏览: 580619 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

http协议Content-Type的不同而数据方式不同

 
阅读更多

http协议补充

http协议消息头中Content-Type方式位application/x-www-form-urlencoded , multipart/form-data , text/plain的区别。

application/x-www-form-urlencoded:数据被编码为名称/值对。

multipart/form-data:数据编码为一条消息,foram表单的控件对应消息中的一个部分。

text/plain:数据纯文本形式编码,其中不含任何控件和格式字符。

 

get方式和post方式的区别:

get方式没有http-body。参数在url中key=value形式传递。对值进行URLencode编码。

post方式和get方式对立。包含http-body。把数据放到http-body中。

 

根据以上的描述,可以总结:

get方式的请求:Content-Type只能为application/x-www-form-urlencoded。没有别的选择。

post方式的请求:Content-Type可以选择application/x-www-form-urlencoded , multipart/form-data , text/plain三种方式。

(1).application/x-www-form-urlencoded

在http-body中,key=value的形式放数据。例如:

传递name=jack,age=25的参数。http-body的内容如下:

name=%E6%9D%8E%E6%98%8E&age=25

(2).multipart/form-data

在http-body中,消息形式放数据。

传递name=jack,age=25的参数。http-body的内容如下:

--pmxcjJfAuM0JsKlaR24WOPpTysBpYSh2

Content-Disposition: form-data; name="name"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

 

jack

--pmxcjJfAuM0JsKlaR24WOPpTysBpYSh2

Content-Disposition: form-data; name="age"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

 

25

--pmxcjJfAuM0JsKlaR24WOPpTysBpYSh2--

 

(3).text/plain:

在http-body中,纯文本形式放数据。

例如放文本{"name":"jack",age:21}

 

总结:常用的http协议隐藏着很多奥秘。只有开启自己的好奇心,才能探究秘密。细节隐藏着魔鬼。

 

参考:http://www.cnblogs.com/52fhy/p/5436673.html

 

分享到:
评论

相关推荐

    http/formdata

    multipart/form-data的数据由多个part组成,part间通过boundary分隔符进行分割,每个part由header和content组成 multipart/form-data的格式大致为: ----------------------------904587217962624105581666 ...

    vccustombr

    而post图片则是自己构造http协议数据,将http协议头的Content-Type设为multipart/form-data,同时还要加上 boundary=xxxxxxx(xxxxxxx表示一个字符串),后面的协议数据内容将要以这个xxxxxxx来进行分隔。发送的数据...

    MFC UploadPhoto实例加源码.rar

    而post图片则是自己构造http协议数据,将http协议头的Content-Type设为multipart/form-data,同时还要加上 boundary=xxxxxxx(xxxxxxx表示一个字符串),后面的协议数据内容将要以这个xxxxxxx来进行分隔。发送的数据...

    VC通过Http协议Get或Post方式与WebService通信,解析返回的Json

    本资源是一个封装类,采用异步方式解决了Wininet不能设置超时的问题,当前异步采用C++...MFC程序中通过HttpGet和HttpPost方式向WebService发送请求,WebService以Json的方式返回数据,MFC程序解析Json,得到指定数据。

    http协议详解

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP协议是无...

    Web应用安全:HTTP协议POST方法.pptx

    HTTP协议POST方法 POST方法 查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的: POST /test/demo_form.php HTTP/1.1 Host: name1=value1&name2=value2 有关 POST 请求的其他一些注释: POST 请求不会...

    HTTP协议详解(真的很经典)

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP协议是无...

    HTTP协议详解.pdf

    正在传输的类型由Content-Type 加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的 应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP 协议...

    HTTP协议详解 学习servlet的必备资料

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP协议是无...

    Http协议详解(中文版)

    正在传输的类型由Content-Type 加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的 应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP 协议...

    java 编写文件上传类简单易用

    在文件上载和表单提交的过程中,有两个指的关心的问题,一是上载的数据是是采用的那种方式的编码,这个问题的可以从 Content-Type 中得到答案,另一个是问题是上载的数据量有多少即 Content-Length ,知道了它,就...

    HTTP协议详解

    HTTP的一个特点是数据表现形式 是可输入的和可协商性的,这就允许系统能被建立而独立于数据传输。 目录 1 引论 1.1 目的 1.2 要求 1.3 术语 1.4 总体操作 2 符号习惯和一般语法 2.1 扩充的BNF(扩充的 巴科斯-...

    调试大叔 v2.1.1.rar

    *支持协议Content-Type编码格式,适配字符或文件流; *可自由管理cookie; *可保存请求协议的记录; *内置一批动态参数,可应用于URL、页头、参数(如生成随机数、URL编码、MD5、AES、Base64加密解密、时间戳/日期...

    浅谈Express.js解析Post数据类型的正确姿势

    2、 Content-Type : 是指 http/https 发送信息至服务器时的内容编码类型, Content-Type 用于表明发送数据流的类型,服务器根据编码类型使用特定的解析方式,获取数据流中的数据。四种常见的 POST 请求的 Content-...

    接口模板.docx

     基于HTTP GET/POST方式进行数据请求;  字符编码格式统一为UTF-8;  所有字段名称大小写敏感;  请求头Content-Type:application/x-www-form-urlencoded; 2.2 接口地址 测试地址:...

    Python使用requests发送POST请求实例代码

    服务端通过是根据请求头中的Content-Type字段来获知请求中的消息主体是用何种方式进行编码,再对消息主体进行解析。具体的编码方式包括: application/x-www-form-urlencoded 最常见post提交数据的方式,以form...

    RFC2616中文翻译-有待改进.odg

    正在传输的类型由 Content-Type 加以标记。 - 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的 应答后,即断开连接。采用这种方式可以节省传输时间。 - 无状态:HTTP 协议...

Global site tag (gtag.js) - Google Analytics