Var*_*run 7 google-maps development-environment heroku
我为我的应用程序创建了一些不同的"环境",这些环境托管在heroku上,所以我有:appName-staging.heroku.com appName-production.heroku.com
我想为这些应用程序使用不同的谷歌API密钥,我该怎么做?我创建了一个google.yml文件,看起来像:
开发:api_key:'ABCXYZ'
制作:api_key:'DEFXYZ'
所以我在本地开发时使用ABCSZY,而对于appName-production.heroku.com问题则使用DEFXYZ,如何让appName-staging.heroku.com使用不同的密钥?
由于部署到Heroku的每个应用程序都被认为是"生产",appName-staging.heroku.com和appName-production.heroku.com都使用相同的密钥.
您可以为每个环境添加一个heroku配置变量,允许您从应用程序中识别每个变量.
有点像:
$ heroku config:add APP_NAME_ENV=production --app appName-production
$ heroku config:add APP_NAME_ENV=staging --app appName-staging
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用以下内容从应用内获取当前环境:
ENV['APP_NAME_ENV']
Run Code Online (Sandbox Code Playgroud)
如果您将YAML文件作为类似的哈希值GOOGLE_KEYS,则以下内容将返回给定环境的正确密钥:
GOOGLE_KEYS[ENV['APP_NAME_ENV']]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3205 次 |
| 最近记录: |