【问题标题】:Where to configure development API keys rails 4在哪里配置开发 API 密钥 rails 4
【发布时间】:2015-01-26 20:27:35
【问题描述】:

我无法确定在我的 rails 应用程序中将开发环境的 API 密钥放在何处。我已经阅读了许多不同的方法,但到目前为止,这就是我所拥有的(Stripe 是 API):

config/initializers/stripe.rb:

Rails.configuration.stripe = {
  :publishable_key => ENV['PUBLISHABLE_KEY'],
  :secret_key      => ENV['SECRET_KEY']
  :client_id => ENV['CLIENT_ID']
}

Stripe.api_key = Rails.configuration.stripe[:secret_key]

我正在使用 Heroku 进行生产,所以我知道如何配置生产密钥。我无法弄清楚在哪里存储用于开发的密钥,以便我可以在本地主机上进行测试。他们应该进入 config/secrets.yml 文件吗?或者也许是 config/environments/development.rb 文件?

感谢您的帮助。

【问题讨论】:

    标签: ruby-on-rails-4 configuration configuration-files stripe-connect


    【解决方案1】:

    我最终解决此问题的方法是将所有配置放在 config/secrets.yml 文件夹中,并让 git 忽略此文件,这样生产密钥就不会存储在任何存储库中。

    看起来像这样:

    development:
      secret_key_base: < secret key base >
      stripe_publishable_key: < publishable key >
      stripe_secret_key: < stripe secret key >
      stripe_client_id: < stripe client id >
    
    test:
      secret_key_base: < secret key base >
    
    production:
      secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
      stripe_publishable_key: < publishable key >
      stripe_secret_key: < stripe secret key >
      stripe_client_id: < stripe client id >
    

    然后我将 config/initializers/stripe.rb 更改为:

    Stripe.api_key = Rails.application.secrets.stripe_secret_key
    

    我不确定这是否是解决我遇到的问题的绝对最佳方法,但它确实有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-26
      • 2021-05-19
      • 2013-08-20
      • 2011-09-28
      • 2014-03-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多