Content-Type常用值解析
Content-Type: application/x-www-form-urlencoded
用于POST请求提交数据的格式之一,常用于FORM表单提交;
在使用表单提交时,请求方式是post时,设置form标签的属性 entry="application/x-www-form-urlencoded"(这也是默认值),则请求头中的content-type的值就是 application/x-www-form-urlencoded;
同时,浏览器会自动把处于 form 标签里的表单元素的内容组织成键值对的方式(key1=val1&key2=val2);其中,键就是每个表单元素的name属性的值,值就是表单元素的value属性的值;
键和值都进行了URL的转码,并放到请求实体里面;大部分服务端语言都对这种方式有很好的支持;(注意如果是中文或特殊字符如"/"、","、“:" 等会自动进行URL转码);
代码示例如下:
<form method="POST" action="regSave.php" >
用户名:<input type="text" name="username" /><br/>
密 码:<input type="password" name="userpass" /><br/>
重复密码:<input type="password" /><br/>
<input type="submit" value="注册" />
</form>
如果使用ajax发送post请求,需要用 setRequestHeader();设置content-type;代码如下:
XMLHttpRequest对象.setRequestHeader("Content-type","application/x-www-form-urlencoded");
Content-Type: text/html; charset=utf-8
如果在报文头里有 Content-Type: text/html; charset=utf-8,表示我服务器端给你客户端响应的内容是html格式的内容,字符集是utf-8;
Content-Type: multipart/form-data; boundary=something
参见:多部分对象集合
Content-Type: multipart/byteranges; boundary=something
参见:范围请求(Range Request)
Content-Type: application/json
这种格式(json格式)是目前在前后端分离开发场景中使用最多的的;前后端的数据交互使用json格式进行,可阅读性好,简介,方便;
这种格式一般用在发送ajax请求时,要么明确设置了 content-type 是application/json;要么,有的第三方库默认是application/json;