Я пробую код ниже, я использую некоторое время, потому что я не знаю длину массива. но я получаю эти ошибки
этот API возвращает JSON ниже, я хотел бы иметь только карту с меткой, nb_uniq_visitors
Посмотрите на строку JSON.
[
{
"label": "Australia",
"nb_uniq_visitors": 1,
"nb_visits": 1,
"nb_actions": 2,
"nb_users": 0,
"max_actions": 2,
"sum_visit_length": 519,
"bounce_count": 0,
"nb_visits_converted": 0,
"code": "au",
"logo": "plugins\/UserCountry\/images\/flags\/au.png",
"segment": "countryCode==au",
"logoWidth": 16,
"logoHeight": 11
},
{
"label": "United States",
"nb_uniq_visitors": 1,
"nb_visits": 1,
"nb_actions": 1,
"nb_users": 0,
"max_actions": 1,
"sum_visit_length": 0,
"bounce_count": 1,
"nb_visits_converted": 0,
"code": "us",
"logo": "plugins\/UserCountry\/images\/flags\/us.png",
"segment": "countryCode==us",
"logoWidth": 16,
"logoHeight": 11
}
]
Планировщик поймал исключение:
нет неявного преобразования String в Integer /home//mixed_dashboard/jobs/visitsbycountry.rb:25:in
[]' /home//mixed_dashboard/jobs/visitsbycountry.rb:25:in
block in '/var/lib/gems/2.1.0/gems/rufus-scheduler-2.0.24/lib/rufus/ sc/jobs.rb:230:вcall' /var/lib/gems/2.1.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/jobs.rb:230:in
trigger_block'/var/lib/gems/2.1.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/jobs.rb:204:вblock in trigger' /var/lib/gems/2.1.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/scheduler.rb:430:in
call'/var/ lib/gems/2.1.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/scheduler.rb:430:in `блок в trigger_job'
-------------------------------------------------- - КОД НИЖЕ ----------------------
require 'rubygems'
require 'net/http'
require 'json'
server = ""
SCHEDULER.every '30s', :first_in => 0 do |job|
url = URI.parse("#{server}")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url.request_uri)
response = http.request(request)
j = JSON[response.body]
# Convert to JSON
countries = []
$i=0
$num = 5
while $i < $num do
country_name = j["label"]
country_visits = j["nb_unique_visits"]
countryHash = {country_name => country_visits}
countries.push(countryHash)
$i+=1
end
send_event('buzzwords', { items: countries })
end
while
. - person Yevgeniy Anfilofyev   schedule 03.12.2015$i
? - person Yevgeniy Anfilofyev   schedule 03.12.2015