Доступ к переменным ENV в приложении Rails-AngularJS (1.5)

0

Работа над приложением Rails-AngularJS (1.5), и у меня возникают проблемы с доступом к моим переменным ENV в JavaScript (службы, консоль и т.д.).

Я использую dotenv, поместил свой SECRET_KEY в.ENV файл и добавил следующее в конец тегов тела в своем приложении layout.html.erb:

<script type="text/javascript"> var SECRET_KEY = "<% ENV['SECRET_KEY'].html_safe %>"; </script>

Так благодарен за любое руководство!

Теги:
environment-variables

1 ответ

0
Лучший ответ

Я рекомендую вам сделать это следующим образом:

<%= content_tag "div", id: "secret_key", data: { key: ENV['SECRET_KEY'] } do %>
<% end %>

Добавьте это в свой layout.html.erb, чтобы вы могли получить доступ к данным из JS, используя:

var secret_key = document.getElementById("secret_key").dataset.key
  • 0
    Спасибо, Пабло. Без jQuery этот последний бит должен быть: var secret_key = document.getElementById ("secret_key"). Dataset.key; Есть ли способ скрыть элемент secret_key от просмотра в консоли html? Даже с «display: none» и «visibility: hidden» его можно прочитать.
  • 0
    Все содержимое интерфейса доступно из консоли браузера. Я рекомендую вам создавать секретные ключи, относящиеся к пользователю, поэтому, если у пользователя есть доступ к этим данным, это не проблема, потому что он только позволит ему или ей читать или писать контент, принадлежащий ему.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню