首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么没有在CORS未命中时设置“Vary:Origin”响应?

为什么没有在CORS未命中时设置“Vary:Origin”响应?
EN

Stack Overflow用户
提问于 2014-08-15 23:34:25
回答 1查看 14.9K关注 0票数 25

发起CORS请求时,如果请求的源站在允许源站列表中,则响应中会同时包含Access-Control-Allow-Origin头部和Vary: Origin头部。

value : Origin告诉negotiated等,响应是根据请求者的Origin标头值协商的。

问题是(我已经测试了主要的CDN提供商),如果请求者没有在他们的请求中提供Origin头部,或者一个不是允许的Origin值,那么响应就不会在响应中包含value : Origin。

预制CORS的CDN是否应该总是在响应头部中返回value : Origin?如果不是,CDN会认为它可以为任何Origin值提供相同的响应。然后,可以通过使用随机原始值发出许多请求来填充CDNs缓存。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-16 00:02:11

是。如果请求可能包含具有不同值的Access-Control-Allow-Origin,则CDN应始终使用Vary: Origin进行响应,即使是没有Access-Control-Allow-Origin header的响应。您的分析是正确的:如果头部并不总是存在,则可能会用不正确的值填充缓存。

票数 31
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25329405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档