首页 > 解决方案 > Firebase Cloud Functions 在云函数中设置环境配置

问题描述

我正在使用调用使用 OAuth2 安全性的外部服务的云功能。我的云函数的每次调用首先进行身份验证并获取访问令牌,以便随后对外部服务进行 API 调用。

访问令牌将在 30 分钟内过期,因此为避免令牌过期,每次调用我都会获得一个新令牌。

我想使用云功能调度程序来获取访问令牌并将其保存到云功能配置中,我可以安排每 25 分钟发生一次。这将避免每次调用都需要首先获取访问令牌。

看起来云功能环境配置不允许在云功能内以编程方式更新配置。

https://firebase.google.com/docs/cli/#functions-commands

有人解决了类似的问题吗?

更新:作为后续文档,需要再次部署云功能才能进行配置更新。我认为这个问题的解决方案很可能是 CI cronjob,它获取访问令牌、更新 firebase 云功能配置并重新部署云功能。

标签: firebaseconfigurationgoogle-cloud-functions

解决方案


我认为尝试更新函数的配置或完全重新部署函数并不是最好的主意。您最好将信息存储在数据库或其他共享位置,然后每个函数都可以根据需要查询以获取令牌及其元数据。该函数可以将令牌存储在内存中,只要它已知是有效的,这样就不必为每次调用获取它。


推荐阅读