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

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值