ruby-on-rails - Rails.application.credentials.dig(:secret_key_base) 在 Heroku 生产中返回 nil
问题描述
我将我的项目部署在 Heroku 上进行生产测试。
在开发环境中,我可以Rails.application.credentials.dig(:secret_key_base)
用来获取 JWT 身份验证的密钥库:
# example
def decode(token)
key = Rails.application.credentials.dig(:secret_key_base)
JWT.decode(token, key)
end
但是当我在 Heroku 中使用它时,它返回“nil”。我尝试通过在控制台中输入它,rails console
它返回“nil”。
我该怎么做才能使其在生产中可用?
解决方案
为了decrypt
凭证文件,您需要RAILS_MASTER_KEY
在您的environment
.
您需要从config/master.key
Heroku 仪表板的环境中获取值并将其添加到环境中。
推荐阅读
- ruby-on-rails - 将 ruby on rails 添加到现有的 react native 应用程序
- node.js - 为 MongoDB 集合中的每个文档设置具有不同值的新字段
- html - Angular 中的 Bootstrap Essentials(Bootstrap 扩展)“不起作用”
- swift - 类实例的内存访问
- javascript - 尝试使用 document.queryselector 将事件侦听器添加到 onclick 事件不起作用
- php - 在 CakePhp 3.x 上将 Value 更新为 null
- python - 在 python 中用阴影区域绘制 95% 置信区间线图
- javascript - 在 normalizr 中重命名结果属性
- c# - 如何从 SQL 数据库获取整数值到 Windows 窗体(C#)中的变量?
- r - r中的if,else语句问题