基本的には、Facebook からユーザーのフォト アルバムを取得して、カバー写真と共に表示しようとしています。
私のユーザーコントローラーには次のものがあります。
def facebook(token)
@facebook ||= Koala::Facebook::API.new(token)
end
def get_photo_albums
albums = self.facebook.get_connection(uid, "albums")
albums.map { |h| { id: h["id"], name: h["name"], count: h["count"], cover_photo: self.facebook.get_picture(h["cover_photo"]) } }
end
ほとんどの場合、このコードは正常に機能しますが、次のエラーが発生することがあります。
Koala::Facebook::APIError (HTTP 500: Response body: {"error":{"message":"No node specified","type":"Exception"}}):
app/models/user.rb:79:in `block in albums'
app/models/user.rb:79:in `map'
app/models/user.rb:79:in `albums'
私のアプリはキャンバス上にあり、ユーザーがアプリにアクセスするたびに signed_request を解析して新しいアクセス トークンを取得します。これは 2 時間続くはずです。
ほとんどの場合は問題なく動作するのに、一部のユーザーにこのエラーが表示される理由がわかりません。このコードを改善するためのアイデアや提案は大歓迎です。ありがとう。