Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
234 views
in Technique[技术] by (71.8m points)

怎样理解 http 的 vary首部?

在 MDN 上对 Vary 这个响应首部介绍的很少,MDN 上说:它决定了对于未来的一个请求头,应该用一个缓存的回复(response)还是向源服务器请求一个新的回复。不太明白 Vary 是什么原理。

我是这么理解的,假如 Vary 设置了下面的值:

Vary: Accept-Language

是不是说代理服务器会对带有 Accept-Language 请求首部的响应数据做缓存,因为代理服务器要知道应比较哪些字段,也需要缓存 Vary。,当下一次再发起这个请求时(同一个请求),会先去缓存里找响应数据,如果两者的 Accept-Language 值相同,则就是用缓存里的数据,如果不相同就从源服务器中获取资源。这样理解对吗?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

vary告诉请求方,request的头部里哪些东西变了会导致服务器返回不同的内容
现在应该是爬虫们在用,比如google可以知道如果response依赖user-agent的话,你的网页会给桌面端和浏览器端提供不同的内容。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...