gpt4 book ai didi

javascript - 如何在rails app中的javascript文件中获取环境

转载 作者:可可西里 更新时间:2023-11-01 02:13:08 29 4
gpt4 key购买 nike

你好,我一直在尝试在 Rails 中获取当前环境,但我认为我的 javascript 做错了什么,但我似乎不知道是什么。在我的 application.js 中我有...

var rails_env = '<%= Rails.env -%>';
alert(rails_env);
alert(rails_env.value);
if(rails_env == 'development'){
alert('inside if')
var indexName = "idx";
}
else{
alert('inside else')
var indexName = "idx_production";
}

它总是进入我的 else 语句,即使我处于开发模式。我究竟做错了什么?谢谢

如何在rails app中获取javascript文件中的环境

最佳答案

您不需要直接将它传递到您的 javascript 文件中。您可以在 erb View 文件中执行此操作,例如:

<script>
window._rails_env = "<%= Rails.env %>"
</script>

或者更好的是:

<%= javascript_tag do %>
window._rails_env = "<%= Rails.env %>"
<% end %>

或最好的(恕我直言):

<body data-env="<%= Rails.env %>">
...

然后:

var railsEnv = $('body').data('env')

警告:

像这样在脚本中转储整个 Rails 环境几乎肯定会危及 Web 应用程序的安全性!正如 Michał Zalewski 在下面的评论中提到的,您的 Rails 应用程序在其环境中包含敏感信息,例如数据库凭据、API key 、用于签名和加密 cookie 的应用程序 secret 等。

关于javascript - 如何在rails app中的javascript文件中获取环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10440853/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com