Ruby on rails 条纹';s轨';s结帐指南代码说明
我目前正在查看Stripe中的以下内容,并发现了这段代码Ruby on rails 条纹';s轨';s结帐指南代码说明,ruby-on-rails,stripe-payments,Ruby On Rails,Stripe Payments,我目前正在查看Stripe中的以下内容,并发现了这段代码 Rails.configuration.stripe = { :publishable_key => ENV['stripe_test_publishable_key'], :secret_key => ENV['stripe_test_secret_key'] } Stripe.api_key = Rails.configuration.stripe[:secret_key] 我想我理解上半部分的意思,
Rails.configuration.stripe = {
:publishable_key => ENV['stripe_test_publishable_key'],
:secret_key => ENV['stripe_test_secret_key']
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
我想我理解上半部分的意思,但Stripe.api\u key=Rails.configuration.Stripe[:secret\u key]到底在做什么?快速按CTRL+F组合键后,Stripe.api\u键
不会在任何地方使用
在完成指南后,我评论了这句话,并且该应用程序在签出时仍然可以正常工作
有人能解释一下为什么这一行被包括在第一位,它甚至是必要的吗?在调用Stripe的API时,您需要提供您的密钥,以便Stripe能够识别您 因此,
Stripe.api_key
由内部使用,以代表您进行api调用
令人惊讶的是,当您注释这一行时,您的应用程序会正常工作,因为如果您不指定密钥,所有API调用都会失败,出现以下异常:
条带::AuthenticationError
:未提供API密钥。使用“Stripe.API_key=”设置API密钥。您可以从Stripe web界面生成API密钥。有关详细信息,请参阅,或发送电子邮件support@stripe.com如果你有任何问题
请注意,当它成功地将卡详细信息转换为令牌时,将显示绿色复选标记。这并不意味着电荷已经产生了!这可能就是为什么您认为注释掉
Stripe.api_key
没有效果,但是如果您在仪表板中查看,您应该会看到令牌创建请求后面没有费用创建请求(因为没有api密钥,Stripe无法判断是您发出了请求!).可发布的API
密钥仅用于用Stripe标识您的帐户,它们不是秘密。换句话说,它们可以安全地发布在Stripe.js JavaScript代码或Android或iPhone应用程序中。可发布密钥只能创建令牌Secret API
密钥永远不应发布,并且必须在您自己的服务器上保密。这些密钥可以不受限制地执行任何对条带化的API请求。参考: