Я пытаюсь разрешить пользователю поделиться фотографией на своей стене в Facebook.Я использую Paperclip для хранения всех фотографий моего приложения на S3.Таким образом, в приведенном ниже примере @ photo.image.url - это S3-URL изображения, которое я хочу опубликовать в some_album.Используя гем fb_graph это относительно просто для localhost.В моем контроллере у меня есть:
the_photo = open(@photo.image.url)
some_album.photo!(
:access_token => access_token,
:source => the_photo
)
Класс the_photo на localhost - "Tempfile".
На героку все усложняется.При использовании одного и того же кода происходят две (казалось бы, связанные) вещи.Во-первых, the_photo это тип класса "stringIO".Во-вторых, когда FbGraph публикует сообщения в Facebook, я получаю следующую ошибку:
FbGraph::InvalidRequest (OAuthException :: (#324) Requires upload file):
Вот несколько важных моментов, которые также могут помочь:
- Heroku - это система только для чтения, ноочевидно, вы можете написать в Tempfile
- Я на Rails 3.1.0
- Ruby 1.9.2
- Heroku Stack Bamboo-Miri
Буду признателен за любую помощь / мысли / обходные пути / вопросы.