【发布时间】:2019-08-22 00:36:54
【问题描述】:
问题:我创建了一个新的 Stripe 帐户并将其连接到我的应用程序,完成了所有新的测试发布和秘密 api 密钥...添加到我的凭据和配置中。
我所有的键都被成功调用了:
Rails.application.credentials.dig(:stripe, :publishable_key),
...在 config 和 stripe.js 文件中
我更新了凭据中的密钥并进行了测试付款并获得
No such token: tok_1EKxxxxxxxxxxxhQKy
然后我手动将新的可发布密钥放入 stripe.js 文件中,它就可以工作了...
为了测试,我尝试输入旧的测试密钥,但我得到了同样的错误。所以我假设凭证挖掘正在获取我的旧密钥,因为它是同样的错误?
是否有可能凭证没有更新?
现在,我能想到的一个问题是,过去我使用 atom 来更新我的凭据,但它从未奏效。我最近遇到了一个 post hat atom 不适用于凭据,但 nano 可以。所以我实现了这个并且它起作用了(直到我输入新的键)。所以我想知道我对旧原子凭证的旧输入是否会干扰?我对此表示怀疑,但可能值得一提
当我想使用凭据来实现时,可以做些什么来解决这个问题?
所有的键都是测试键,并且在正确的位置。 我假设,在 stripe.js 文件中,凭据或 dig 仅获取旧密钥?
因为当我手动输入旧的测试密钥时,它不会出现与凭据挖掘相同的错误。
这一切正常,直到我更新了新密钥的凭据...
【问题讨论】:
-
您是否在更改凭据后重新启动了 Rails 应用程序?
-
是的,很多次。我重试了这个过程大约 3 次。
-
客户端缓存很可能发生了一些事情。尝试清除本地缓存(rake tmp:cache:clear),在隐身窗口中尝试,等等。
-
@Jon 嘿,谢谢!所以,这在本地有效,但 heroku 没有。我尝试使用“heroku rake tmp:cache:clear”,它生成但不起作用。我也重新启动了测功机。有什么方法可以为 heroku 模仿这个?
-
这成功了:help.heroku.com/18PI5RSY/how-do-i-clear-the-build-cache ---- 感谢您让我走上正轨@Jon
标签: ruby-on-rails ruby stripe-payments credentials