我想在我的应用程序中使用openweather。
直接编写api_key效果很好。无论我如何介绍ENV,它都不会起作用。
有人知道怎么修吗?
quesiton低于
static_pages_controller.rb
...
uri = URI.parse('http://api.openweathermap.org/data/2.5/weather?q=Tokyo&appid=ENV['OPEN_WEATHER_API_KEY']')
json = Net::HTTP.get(uri)
res = JSON.parse(json)
@wind = res['wind']['speed']
@humidity = res['main']['humidity']
@clouds = res['clouds']['all']
...
.env
OPEN_WEATHER_API_KEY=20ab....
error code
/Users/sy/env2/ji-boys/app/controllers/static_pages_controller.rb:19:
syntax error,
unexpected tCONSTANT, expecting ')' ...appid=ENV['OPEN_WEATHER_API_KEY']') ... ^~~~~~~~~~~~~~~~~~~~
/Users/sy/env2/ji-boys/app/controllers/static_pages_controller.rb:19:
syntax error, unexpected ')', expecting end ...d=ENV['OPEN_WEATHER_API_KEY']') ... ^
我想。。。appid=ENV['OPEN_WEATHER_API_KEY']。。是错误的。正在搜索如何编写代码,但找不到。
任何知道这一点的人,请教我如何修复。
感谢您阅读本文。
您需要进行字符串插值来嵌入值
URI.parse("http://api.openweathermap.org/data/2.5/weather?q=Tokyo&appid=#{ENV['OPEN_WEATHER_API_KEY']}")