content-type的意义和作用

content-type是什么呢?

它是http header头的一部分,它的作用就是协调http交互的两端传输内容的格式! 简单的说,就是告诉对方给我个html,我要的是html格式的返回,所以你在发送的时候,就要传递text/html ,这个就是协议,就是规则,告诉你,我要啥了,你就要根据我要的给我!再交互中,这个必定少不了,下边来说说我们常用的几种content-type.

 Content-Type:application/x-www-form-urlencoded:

这个应该是你最常用到的,如果你只是用类库发送请求,也许你并不知道。你常常看接口请求,在浏览器的f12中的header 请求中,你就会常常看到这个,一般的form表单请求都是这个请求,这个是form表单提交数据交互用户的,服务端遇到这个content-type,就会自动最客户端发过来的请求进行解析放到相应的函数中,例如,php中的,$_GET,$_POST,请求头有这个,php就会自动填充这个两个函数中,如果这里你突然发送的是application/json,你用$_POST就接收不到数据啦,那是因为php不认得,刚才的函数之人form请求的,所以,它接收不了,这时你就需要用流接收!

    Content-Type:application/from-data:

     这个应该前端同学更熟悉,上传文件的时候,form表单就写了个这个,这个代表文件的传输,它的格式也比较特殊,可以观摩一下

是不是感觉这是啥啊,多看几次就知道啦!也是key=》value的形式!

另外介绍的一个是

   Content-Type:application/json:

接口请求中也用的非常多,如果你要发送json格式的信息给接口,你的content-type就必须是这个!告诉服务端我发送的是json格式,注意接收啊!这样服务端也是用流接收到的,有的语言还对此进行了解析,放到对应的结构中,直接使用!

说白了content-type就是两方交互的协议,告诉,我要传递什么啦,你就按我说的东西接收把,要不你接收不对(当然是能接收,就是你不知道怎么处理这个格式)!

其他的不介绍啦,都很类似,就是一种约定!

简单贴贴看看

http://coolaf.com/exp/help?s=httpcontenttype

这里有其他的介绍,自己去看把