Я пытаюсь сохранить свои ключи API для Stripe Elements .. Мой предыдущий пост вы можете увидеть здесь: Использование JavaScript для Stripe Elements
Как видите, Stripe Elementsне отображается с JS из Stripe или моим файлом stripejs.js.
Я предполагаю, что это https://js.stripe.com/v3/, который как-то не отображается из-за неправильного хранения ключей API.В настоящее время мои ключи API хранятся в моем файле .env, управляемом гемом dotenv
Я пытаюсь сохранить ключи API с помощью credentials.yml.enc, но не уверен, правильно ли я это делаю.
Что я делаю:
Вызовите «РЕДАКТОР = учетные данные атомных рельсов: редактировать» в CMD.Атом выскакивает.Я храню ключи API следующим образом: PUBLISHABLE_KEY = pk_test_1111111111111111111 SECRET_KEY = sk_test_11111111111111111111
Сохранить файл.Выход.
Хотя, это не сработает.Я не храню это правильно?Делаете что-то не так?
В моем файле stripe.rb под инициализаторами есть:
Rails.configuration.stripe = {
:publishable_key => ENV['PUBLISHABLE_KEY'],
:secret_key => ENV['SECRET_KEY']
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
Редактировать:
У меня есть файл stripe.rb, структурированный так:
Rails.configuration.stripe = {
:publishable_key => Rails.application.credentials.stripe[:publishable_key],
:secret_key => Rails.application.credentials.stripe[:secret_key]
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
и затем сохранил мои учетные файлы, например:
stripe:
publishable_key: 123456789
secret_key: 123456789
При запуске моего сервера я получаю сообщение об ошибке:
undefined method \credentials' for Rails:Module (NoMethodError)`
Что-то не так?я делаю?
Попытка: 2:
Я пытался сделать в файле stripe.rb ...
Rails.configuration.stripe = {
Rails.application.credentials.stripe[:publishable_key],
Rails.application.credentials.stripe[:secret_key]
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
с и без в последний раз ... Яполучить сообщение об ошибке: «синтаксическая ошибка, неожиданный '}', ожидаемый конец ввода»
ОБНОВЛЕНИЕ:
на случай, если кто-нибудь столкнется с подобной проблемой ...
Для меня это был бутстрап, вызывающий проблемы.Все, что вам нужно сделать, это использовать class = "form-control" в форме Stripe Elements для правильного отображения - если вы используете Bootstrap.