Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中访问Rails环境变量_Javascript_Ruby On Rails - Fatal编程技术网

如何在Javascript中访问Rails环境变量

如何在Javascript中访问Rails环境变量,javascript,ruby-on-rails,Javascript,Ruby On Rails,我正在使用dotenv,并且在.env文件中有API键。我希望能够在javascript文件中使用该api键,但不确定它如何访问Rails的环境变量。我不确定这是否正确,但我将.js文件的结尾改为.js.erb并使用了我的密钥(但它不起作用): var响应=”http://bustime.mta.info/api/where/stops-for-location.json?lat=40.708727599999996&lon=-74.002798&latSpan=0.005&lonSpan=0.

我正在使用dotenv,并且在.env文件中有API键。我希望能够在javascript文件中使用该api键,但不确定它如何访问Rails的环境变量。我不确定这是否正确,但我将.js文件的结尾改为.js.erb并使用了我的密钥(但它不起作用):

var响应=”http://bustime.mta.info/api/where/stops-for-location.json?lat=40.708727599999996&lon=-74.002798&latSpan=0.005&lonSpan=0.005&key=“+”;
非常感谢您的任何帮助


更新:当我询问变量响应是什么时,我只是返回,“(它没有呈现任何关于键应该放在哪里的内容)。

我能够找到答案。我不需要在请求和键变量之间串联:

var response = "http://bustime.mta.info/api/where/stops-for-location.json?lat=40.708727599999996&lon=-74.002798&latSpan=0.005&lonSpan=0.005&key=<%= ENV['MTA_API_KEY'] %>";
var响应=”http://bustime.mta.info/api/where/stops-for-location.json?lat=40.708727599999996&lon=-74.002798&latSpan=0.005&lonSpan=0.005&key=“;

通过将键变量与字符串保持在一起,它可以工作。谢谢你的帮助

你真的设置了环境变量吗?你能在控制台中输出它吗?例如,在呈现这个js的控制器操作中?@zmii-是的,它在我的.env文件中设置为MTA#u API#u KEY=##########。您建议如何将其从控制器输出到控制台(仍在学习Rails)。谢谢。
put ENV['MTA\u API\u KEY']
var response = "http://bustime.mta.info/api/where/stops-for-location.json?lat=40.708727599999996&lon=-74.002798&latSpan=0.005&lonSpan=0.005&key=<%= ENV['MTA_API_KEY'] %>";