博客
关于我
记录一下几个HTTP HEADER字段
阅读量:328 次
发布时间:2019-03-03

本文共 2171 字,大约阅读时间需要 7 分钟。

记录几个HTTP请求-响应头

请求头

HTTP请求中的请求头(Request Headers)包含客户端向服务器发送的各种信息,用于指导服务器如何处理请求。常见的请求头包括:

Accept

告知服务器客户端可以处理的内容类型,使用MIME类型表示。例如:

Accept: */*

表示客户端可以处理任意类型的MIME类型。

Accept-Encoding

通知服务器客户端能够理解的内容编码方式,通常用于内容协商。例如:

Accept-Encoding: gzip, deflate

服务器会选择客户端支持的编码方式进行响应。

Accept-Language

告知服务器客户端可以理解的自然语言及优先区域方言。例如:

Accept-Language: en-US, en

用于内容协商,服务器可根据语言选择合适的资源。

Connection

决定当前TCP连接是否持久。值keep-alive表示连接保持不变,适用于长时间传输。例如:

Connection: keep-alive

Host

指定请求服务器的域名或IP地址和端口号。默认端口为HTTP的80和HTTPS的443。例如:

Host: developer.mozilla.org

Referer

记录当前请求页面的来源页面地址,用于追踪访问路径。例如:

Referer: https://www.example.com/page.html

服务器可利用Referer信息进行日志统计、缓存优化等。

TE

指定传输编码类型及优先级,用于客户端与服务器协商传输方式。例如:

TE: gzip, deflate

User-Agent

包含客户端的软件信息,用于服务器识别客户端类型。例如:

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4452.72 Safari/537.36

响应头

HTTP响应中的响应头(Response Headers)包含服务器向客户端发送的信息,通常用于控制缓存、内容协商和协议处理。常见的响应头包括:

Cache-Control

控制缓存机制,指定缓存策略。常见值包括:

  • public: 响应可被缓存。
  • private: 响应只供单一客户端缓存。
  • no-cache: 响应不可缓存。
  • no-store: 响应内容不可缓存。

Expires

指定响应的有效期限,表示在该日期/时间之后响应将过期。例如:

Expires: Wed, 10 Jul 2024 00:00:00 GMT

Server

包含处理请求的服务器软件信息。例如:

Server: Apache/2.4.1 (Unix)

Strict-Transport-Security

强制使用HTTPS协议,防止混合内容攻击。例如:

Strict-Transport-Security: max-age=63072000

Vary

决定了哪些请求头信息会影响响应内容协商。例如:

Vary: User-Agent

用于防止客户端缓存旧版本的资源。

Via

追踪消息传输路径,可用于反向代理统计。例如:

Via: http/1.1 ProxyPlusCleanToPlus

X-Content-Type-Options

指示客户端是否遵循MIME类型指定。例如:

X-Content-Type-Options: nosniff

X-Frame-Options

防止点击劫持攻击,控制页面嵌入。例如:

X-Frame-Options: DENY

X-ContentSecurityPolicy

保护页面内容不被嵌入或加载。例如:

X-ContentSecurityPolicy: frame-allow none

Access-Control-Allow-Origin

指定哪些域名的资源可以共享。例如:

Access-Control-Allow-Origin: *

表示允许所有域名访问资源。

Access-Control-Allow-Credentials

允许客户端传递凭证信息。例如:

Access-Control-Allow-Credentials: true

Access-Control-Expose-Headers

列出可以暴露给客户端的响应头。例如:

Access-Control-Expose-Headers: Cache-Control, Content-Length

X-CSRF-Token

防止跨站请求伪造攻击。例如:

X-CSRF-Token: abc123

其他注意事项

  • Referer 不会在以下情况下发送:

    • 来源页面使用filedata URI。
    • 客户端使用非安全协议访问,而来源页面使用安全协议。
    • 直接输入URL或通过浏览器书签访问。
    • 使用Location.hrefLocation.replace()
    • 使用HTML5的noreferrer属性。
  • Referer 的作用:

    • 统计访问来源。
    • 防盗链。
    • 防止恶意请求。

HTTP请求和响应头是网络通信的基础,理解它们对于开发和优化网络应用至关重要。

转载地址:http://blxm.baihongyu.com/

你可能感兴趣的文章
mysql 修改默认字符集为utf8
查看>>
Mysql 共享锁
查看>>
MySQL 内核深度优化
查看>>
mysql 内连接、自然连接、外连接的区别
查看>>
mysql 写入慢优化
查看>>
mysql 分组统计SQL语句
查看>>
Mysql 分页
查看>>
Mysql 分页语句 Limit原理
查看>>
MySQL 创建新用户及授予权限的完整流程
查看>>
mysql 创建表,不能包含关键字values 以及 表id自增问题
查看>>
mysql 删除日志文件详解
查看>>
mysql 判断表字段是否存在,然后修改
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>