我正在使用云函数来调用使用OAuth2安全性的外部服务。每次调用我的云函数时,首先进行身份验证,并为后续对外部服务的API调用获取访问令牌。
访问令牌将在30分钟后过期,因此为了避免令牌过期,每次调用都会获得一个新的令牌。
我想使用云函数调度程序来获取访问令牌,并将其保存到云函数配置中,我可以将其安排为每25分钟执行一次。这将避免每次调用都需要首先获取访问令牌。
看起来云函数环境配置不允许对云函数中的配置进行程序化更新。
https://firebase.google.com/docs/cli/#functions-commands
有人解决了类似的问题吗?
更新:如后续文档所示,需要重新部署云函数才能进行配置更新。我认为这个问题的解决方案可能是CI cronjob,它获取访问令牌,更新firebase云函数配置并重新部署云函数。
发布于 2019-08-05 23:56:26
我认为尝试更新函数的配置,或者完全重新部署函数,在这里并不是最好的主意。您最好将信息存储在数据库或其他共享位置中,然后每个函数都可以根据需要进行查询,以获取令牌及其元数据。该函数可以将令牌存储在内存中,只要它是有效的,这样就不必在每次调用时都获取它。
https://stackoverflow.com/questions/57356143
复制相似问题