HTTP header(http头)表示在HTTP请求或响应中的用来传递附加信息的字段,修改所传递的信息的语义,或使其更加精确。
request header属于http头的其中一类,它包含有与所要获取的资源或客户端自身相关的附加信息。
下表给出一些常见的request header
request header | 意义/作用 | 可选值 |
---|---|---|
host | 发送该请求的地址和端口号 | 浏览器自动提取 |
method | 代表该请求的请求方式 | |
scheme | 表示该请求的协议 | 自动提取http/https |
accept | 表示浏览器能够处理的返回类型 | text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9 |
accept-encoding | 指定客户端能够进行解码的数据编码方式 | gzip, deflate, br |
accept-language | 申明客户端接收的语言 | zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7 等 |
cache-control | 表示浏览器的缓存方式 | max-age= max-stale[=] Cache-Control: min-fresh= no-cache no-store no-transform only-if-cached |
if-none-match | 比较实体标记。给定该参数,判断某资源是否存在 | |
if-modified-since | 上次资源的更新时间 | 时间 |
user-agent | 告诉服务器,浏览器使用的操作系统和浏览器名称、版本等信息 |
学到这里顺便提一下简单请求和复杂请求。
如果request header只包含Accept、Accept-Language、Content-Language、Content-Type
同时
Content-Type 的值仅限于下列三者之一:
- text/plain
- multipart/form-data
- application/x-www-http-urlencoded
则该请求是简单请求,其余情况都是复杂请求,在发送前都会有options请求做一个预校验。