Facebook Open Graph из Rails Heroku

Я боролся с этой проблемой весь день, и мне действительно может понадобиться некоторая информация.

У меня есть приложение Rails (3.1.3), работающее на Heroku Cedar, и я пытаюсь опубликовать некоторые действия Facebook Open Graph с помощью gem fb_graph (2.4.0).

Это мой код.

begin
    app = FbGraph::Application.new(ENV['facebook_app_id'])
    me = FbGraph::User.me(user.facebook_access_token)

    logger.info "Facebook: User #{user.name} reviewing game #{game_url(review.game)}"

    action = me.og_action!(
        app.og_action(:review),
        :game => game_url(review.game),
        :content => review.review,
        :rating => review.rating
    )
rescue Exception => exc
    logger.error "Failed to publish review #{review.id} to facebook #{user.facebook_auth}"
    logger.error "Facebook error msg: #{exc.message}"
end

Если я перейду на страницу своего приложения, которое попытается запустить этот код, произойдет сбой со следующим сообщением.

FbGraph::InvalidRequest (Exception :: Could not retrieve data from URL.)

Но если я открою консоль Heroku, запущу консоль herokuи наберу код вручную, все будет работать отлично.

Моей первой мыслью было, что game_url(review.game)виноват, но после добавления сообщения журнала я уверен, что он возвращает правильный URL. И, поскольку все это работает, когда я запускаю его вручную через консоль heroku, он подтверждает, что этот URL-адрес доступен и доставляет запрошенные данные.

Мы будем очень признательны за любые отзывы или опыт.

6
задан Mikael Lundin 27 March 2012 в 15:19
поделиться