こんにちは
、Facebookユーザーのアルバムのカバー写真を取得しようとしています。
APIページに記載されているように、
http s://graph.facebook.com/ [album_id]} / picture?access_token = blahblahblah ...を取得すると、「アルバムのカバー画像のURLを含むHTTP302」が返されます。
ここのドキュメント:http://developers.facebook.com/docs/reference/api/album
HTTParty、Net:HTTPを試しましたが、RedirectFollowerクラス
HTTPartyは画像自体を返しますが、
NET:HTTPとRedirectFollowerはどこにも「場所」(URL)情報が
ありません...URIを使用しない場合URLをgetメソッドに渡すときに.encodeを実行すると、「bad uri」エラー
が発生しますが、URI.encodeを使用してエンコードされたURIを渡すと、EOFError(ファイルの終わりに到達)が発生します
。驚くべきことに、場所のURLを確認できます。 apigeeのFBAPIを使用する場合
Net:HTTPドキュメントで推奨されているリダイレクト方法は次のとおりです。
何か変更する必要がありますか?またはこれを行う簡単な方法はありますか?ありがとうございました!!
def self.fetch(uri_str, limit = 10)
response = Net::HTTP.get_response(URI.parse(uri_str))
case response
when Net::HTTPSuccess then response
when Net::HTTPRedirection then fetch(response['location'], limit - 1)
else
response.error!
end
end