我有一个项目,我设置了钥匙。
live键
functions:config:set stripe.secret="sk_live_..." stripe.publishable="pk_live_..."
测试键
functions:config:set stripe.secret="sk_test_..." stripe.publishable="pk_test_..."
该应用程序处于Beta阶段,但现场直播。因此,代码仍进行了更多的更改。因此,我想避免在每次测试Local主机上测试一些新功能时避免设置键。
有没有一种方法来配置firebase函数,与不同的环境相对应?
在Local主机上时,它应该使用测试键和远程启用键进行验证?
没有特殊的每个环境配置。您可以做的是使用项目的唯一ID来确定应该应用的设置。功能可以通过GCP_PROJECT
const project_id = process.env.GCP_PROJECT
您在开发过程中应使用的价值是一个意见问题 - 尽其所能。
我相信您可以在functions
目录中制作一个.runtimeconfig.json
文件,模拟器将读取该文件。
例如,首先使用`firebase function config:set stripe.secret =" sk_test _...
然后,运行firebase functions config:get > .runtimeconfig.json
当该文件存在时,根据我的经验,您的firebase模拟器将从其中读取,并且您不会继续覆盖生产配置变量。
文档:https://firebase.google.com/docs/functions/local-emulator#set_up_up_functions_configuration_optional