如何绕过 Firebase Hosting 的默认 Vary on Authorization header
How to bypass Firebase Hosting's default Vary on Authorisation header
根据 Firebase Hosting 的文档:
https://firebase.google.com/docs/hosting/functions#when_is_cached_content_served
Firebase Hosting automatically ensures that an appropriate Vary header is set on your response for common situations. This includes making sure that any session cookie or authorization header that you're using is made part of the cache key, which prevents accidental leaks of content.
Firebase 托管会自动将 "authorization" header 放入 Vary。
但是,有些 API 确实需要获取 "Authorization" header 并确定它是否需要在 Firebase 托管中缓存响应。
我可以知道如何让 Firebase 托管在授权时不发生变化 header?谢谢
[注意,我是一名从事托管工作的 Firebaser]
对于通过 Firebase 托管连接的 Firebase 函数,您无法更改返回的默认 Vary
header。如果函数向 Vary
header 添加额外的值,这些值将被包括在内,但不能覆盖默认值。
[有想法的编辑...]
如果 ,您 可能 (这是一个很大的可能,我还没有尝试过)能够直接调用函数的端点而不是通过托管真的 不希望 Vary
header 包含 Authorization
。您 将 必须处理 CORS 和相关的事情,但您可以更好地控制它。
因为托管的好处是它位于 CDN 后面,所以它需要一种良好(安全)的方式来缓存信息,而 Authorization
对此至关重要。如果您想自己处理其中一些,直接调用函数可能是最好的选择。
根据 Firebase Hosting 的文档: https://firebase.google.com/docs/hosting/functions#when_is_cached_content_served
Firebase Hosting automatically ensures that an appropriate Vary header is set on your response for common situations. This includes making sure that any session cookie or authorization header that you're using is made part of the cache key, which prevents accidental leaks of content.
Firebase 托管会自动将 "authorization" header 放入 Vary。
但是,有些 API 确实需要获取 "Authorization" header 并确定它是否需要在 Firebase 托管中缓存响应。
我可以知道如何让 Firebase 托管在授权时不发生变化 header?谢谢
[注意,我是一名从事托管工作的 Firebaser]
对于通过 Firebase 托管连接的 Firebase 函数,您无法更改返回的默认 Vary
header。如果函数向 Vary
header 添加额外的值,这些值将被包括在内,但不能覆盖默认值。
[有想法的编辑...]
如果 ,您 可能 (这是一个很大的可能,我还没有尝试过)能够直接调用函数的端点而不是通过托管真的 不希望 Vary
header 包含 Authorization
。您 将 必须处理 CORS 和相关的事情,但您可以更好地控制它。
因为托管的好处是它位于 CDN 后面,所以它需要一种良好(安全)的方式来缓存信息,而 Authorization
对此至关重要。如果您想自己处理其中一些,直接调用函数可能是最好的选择。