0

可以在第二代https可调用函数的响应上设置缓存头吗?也就是说,缓存控制头告诉浏览器将其保存在缓存中一段时间。

以下是https可调用的典型样板:

从“@repo/common”导入{getErrorMessage};从“firebase-functions”导入{logger};从“zod”导入{z};从“~/config.js”导入{region};从“firebase-functions/v2/https”导入{onCall,HttpsError};常量模式=z.object({内容:z.string(),});export const my_callable_function=调用({区域,},异步(事件)=>{尝试{const{something}=schema.parse(event.data);console.log(`做某事:${something}`);}捕获(错误){const消息=getErrorMessage(错误);logger.error(`Failed to get something:${message}`);抛出新的HttpsError(“内部”,消息,错误);}});

这些函数仅在Firebase应用程序内部使用。我看到还有一个onRequest,您可以使用它来代替onCall,它提供了express请求和响应对象,但我想坚持使用onCall因为它确实处理了用户身份验证,并且函数不可公开访问。

1答案1

重置为默认值
1

这是不可能的,并且自v1以来一直没有改变。SDK接管所有HTTP详细信息。可调用项用于远程过程调用,不应缓存。如果需要实现缓存,请使用普通的HTTP函数,并确保客户端和服务器都同意该方案。

请参见:

1
  • 再次感谢道格。双子座似乎对此产生了幻觉。 5月19日13:08

你的答案

点击“发布您的答案”,即表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.