我正在尝试理解当您将?pp=env附加到请求的基URL上时,Rails的“机架-迷你分析器”实际上是如何转储环境变量的。现在,我的Gemfile已经配置了gem 'dotenv-rails,并且我正在使用.env.local填充一些测试变量。我的问题是,rack-mini-profiler从哪里获取环境变量?有许多不同的方法可以在rails应用程序中填充环境变量,dotenv就是其中之一。我仔细阅读了rack-mini-profiler的源代码,但似乎找不到它。我在'profiler.rb‘中看到了dump_env函数,但我看不到这些环境变量是在哪里或者是如何从代码中提取出来的。它只显示了通过使用键/值对的do循环来打印它们。这是我正在使用的示例应用程序,您可以在以下网址看到环境变量:https://preprod.rtcfingroup.com/?pp=env欣赏任何见解。真正试图在低层次上理解这一点。
发布于 2020-05-16 20:40:31
Miniprofiler实际上并没有做任何事情,因为Ruby通过the ENV constant暴露了环境变量,这是一个类似于散列的类。
dump_env just iterates over them
body << "\n\nEnvironment\n---------------\n"
ENV.each do |k, v|
body << "#{k}: #{v}\n"
endhttps://stackoverflow.com/questions/61821207
复制相似问题