3
以下のコードを使用して、Paperclipを使用してFacebookプロフィール画像を開いてS3にアップロードしています。コード(Railsの3.1、ルビー1.9.2 P290)私はlocalhost上で正常に動作しますが、それはHerokuの(竹-MRI-1.9.2)に分割しHerokuのopen-uriでエラーが発生しました
facebook_image_url = access_token['user_info']['image'].gsub("square", "large")
url = URI.parse(facebook_image_url)
#Follow the redirect of Facebook profile picture url
res = Net::HTTP.start(url.host, url.port) { |http|
http.get(facebook_image_url)
}
signed_in_resource.avatar = open(res['location'])
signed_in_resource.save
signed_in_resource
誰でもどんな提案を持っていますか?
Herokuの読み取り専用ファイルシステムと関係する可能性があります。たぶんopen-uriが何らかの一時ファイルを作成しようとしているのでしょうか?私はこれが理由だとは知らないが、チェックする価値があるかもしれない。 – Elad
私はS3 URLと同様の問題がありました。私は、アップロードされたファイルのファイル名のおかげで、多くのものがスペースがあったことに気付いた。 URI.escapeを実行すると( 'url to my picture.jpg')、試してみる価値があるかもしれませんが、ソート済みです。 – Pete