J'ai écrit une tâche de rake qui remplit ma base de données avec des données provenant d'une API tierce.L'exécution de la tâche rake avec open-uri sur Heroku entraîne une erreur Connection Refused.
namespace :populate do
desc "Populate database with data from first page of TicketWeb API"
task :one_page => :environment do
require 'open-uri'
json_data = open(SOME_URL).read
parsed_json = JSON.parse(json_data)
parsed_json["events"].each do |e|
existing_event = Event.find_by_id(e["eventid"])
if existing_event == nil
new_event = Event.new(e)
new_event.save
else
existing_event.update_attributes(e)
end
end
end
fin
Cela fonctionne parfaitement lors de l'exécution sur ma machine locale. Cependant, l'exécuter sur une instance Heroku entraîne cette erreur:
rake abandonné! Connexion refusée - connect (2)
Je dois admettre que je ne suis pas très expérimenté avec Rails, donc je ne suis pas sûr si je récupère correctement les données de l'API tierce ou si Heroku n'aime pas ce que je fais. Je suis juste perplexe, pour le moment.