前端知会 之 HTTP Header

本文深入探讨了前端开发中与HTTP相关的知识点,包括HTTP协议的基础、文件信息、压缩技术、代理缓存和缓存策略,如Expires、Cache-Control和ETag的使用,还涉及条件GET请求、持久连接和重定向等关键概念,旨在优化前端性能。
摘要由CSDN通过智能技术生成

HTTP

HTTP 协议,构建在TCP之上, HTTP协议使用了简单的超文本格式, 由request和response构成。

以GET请求为例子:
一个 HTTP request包含2部分:请求地址  和 请求头。
一个 HTTP response 包含 3个部分: 状态码, 响应头 和 响应体。


文件信息

Content-Type: application/x-javascript
Content-Length: 2000






压缩

在浏览器和服务器都支持时候,可以使用压缩header来减小响应文本的大小, 这时候使用的header:
----------------------------------------
Accept-Encoding: gzip
----------------------------------------
Content-Encoding: gzip
----------------------------------------

注意:ETag不能显示response content是否被gzip过,可以选择禁用ETag


代理缓存

在开启之后gzip之后,需要添加Vary头,代理才会根据一个或者多个header来判断是否改变缓存的响应,
否则会将一个gzip过的response发给不支持gzip的browser而导致可能出错。
在server的Vary reponse header中指明缓存策略使用判断的header为 Accept-Encoding
----------------------------------------
Vary: Accept-Encoding
----------------------------------------
这时候代理缓存会 cache 响应的多个版本,根据Accept-Encoding不同缓存不同的版本。
Vary可以指定多
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值