一 疑问
1.http请求头信息作用,为什么有时候不需要
告诉后端相关信息,后端好根据对应的方式去处理,如果不传入header,则后端使用默认的方式去处理
2.Accept,浏览器端能够处理的内容类型。
例如: Accept: text/html 代表浏览器可以接受服务器回发的类型为 text/html 也就是我们常说的html文档。如果服务器无法返回text/html类型的数据,服务器应该返回一个406错误(non acceptable)。通配符 * 代表任意类型,例如 Accept: */* 代表浏览器可以处理所有类型,(一般浏览器发给服务器都是发这个)。
3.Content-Type(内容类型),一般是指网页中存在的 Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件,请求和响应中都可以用
- 在HTTP的请求头中,可以使用Content-type来指定上传参数不同格式的请求信息。
二 http请求content-type与响应responseType
http请求
http请求信息由浏览器把地址栏URL信息和页面(html、jsp、asp)组装成http请求消息体
- <request-line>(请求消息行)
- <headers>(请求消息头)
- <blank line>(空行)
- <request-body>(请求消息数据)
content-type是请求消息头中的一个请求参数,标识请求消息数据的格式
http响应
HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文
- <status-line>(状态行)
- <headers>(消息报头)
- <blank line>(空行)
- <response-body>(响应正文)
content-type是响应消息报头中的一个参数,标识响应正文数据的格式
请求content-type的组成
格式 Content-Type: type/subtype;parameter;
例如 Content-Type: text/html;charset:utf-8;
主类型type
- text------------文本类型
- application-- 应用类型
- *----------------所有类型
子类型subtype
- html-----------html格式
- xml -----------xml格式
- json-----------json格式
- *---------------所有格式
参数parameter
常用的是编码方式参数charset:utf-8
常见的媒体类型
type/subtype 即是互联网媒体类型,也叫作MIME-Type
主类型是text
text/html : HTML格式
text/plain :纯文本格式
text/xml : XML格式(忽略xml头所指定编码格式而默认采用us-ascii编码)
image/png: png图片格式
主类型是application
application/xhtml+xml :XHTML格式
application/xml : XML数据格式(根据xml头指定的编码格式来编码)
application/json : JSON数据格式
application/octet-stream : 二进制流数据(如常见的文件下载)
请求content-type的三种设置方式
1.设置在发送请求页面的header中
不能指定application/x-www-form-urlencoded和multipart/form-data这两种类型
<header>
<meta content="text/html" charset="utf-8"/>
</header>
2.设置在form表单提交的enctype参数中
只能指定application/x-www-form-urlencoded和multipart/form-data这两种类型
默认是application/x-www-form-urlencoded类型,浏览器会把表单中发送的数据编码为“key=value”对的形式
当向服务器发送大量的文本、包含非ASCII字符的文本或二进制数据时,例如上传文件时,选择multipart/form-data
<form action="" enctype="multipart/form-data"></form>
<form action="" enctype="application/x-www-form-urlencoded"></form>
3.设置在request header参数中
没有限制都可以用