1. Request Header
1. Origin
用于说明请求来自哪个站点,使用时对应服务端Access-Control-Allow-Origin
// 格式如下:协议+域名+[端口] Origin: <scheme> "://" <host> [ ":" <port> ] // scheme 是请求协议 // host 发起请求的服务器的域名/IP地址 // port端口号,默认80
示例:
http://localhost:3000
2. host
指明目标服务器的域名和端口。必须存在,否则会出现400错误。
//格式如下: 域名+端口 Host: <host>:<port>
示例:
Host: localhost:8080
3. referer
// 格式是一个完整的url, 包含查询字符串,但是不包含Fragments(#), 也不包含用户名密码 Referer: <url>
示例:
Referer: http://locahost:3000?a=1&b=2
多数情况下,它是当前页面的路由地址。(Origin的完整版)
当从一个网站访问另一个网站时,跳转到的html页面对应的是跳转前的地址;
应用:
服务器端根据该字段确定访问来源,用于进行统计分析,日志记录,缓存优化等。
缺点:
暴露用户浏览历史,泄漏用户隐私
有两种情况不发送该字段:
1.来源页面采用的协议为表示本地文件的 "file" 或者 "data" URI; 2.当前请求页面采用的是非安全协议,而来源页面采用的是安全协议(HTTPS)
4. Cache-Control
5.Pragma
6.If-Modified-Since
7.If-None-Match
4-7是缓存相关请求头字段,详情查看
8. Access-Control-Request-Headers
9. Access-Control-Request-Method
8-9是跨域相关请求头字段,详情查看
2. Response Header
1. Access-Control-Allow-Orgin
2. Access-Control-Allow-Credentials
3. Access-Control-Allow-Headers
4. Access-Control-Allow-Methods
5. Access-Control-Expose-Headers
6. Access-Control-Max-Age
以上都是服务器端跨域相关的字段,查看详情
7.Cache-Control
8.Expires
9.Last-Modified
10. Etag
7-10是缓存相关响应头字段,查看详情