Hello
я пытаюсь получить обложку альбома пользователя Facebook.
как сказано на странице API, он возвращает «HTTP 302 с URL обложки альбома» при получении:
http s: //graph.facebook.com/ [album_id]} /picture?access_token=blahblahblah...
документы здесь: http://developers.facebook.com/docs/reference/api/album
я пробовал HTTParty, Net: HTTP, а также класс RedirectFollower
HTTParty возвращает само изображение картинки, и нигде нет информации о «местоположении» (URL)
NET: HTTP и RedirectFollower немного сложнее ...
если я не использую URI.encode при передаче URL-адреса в метод get, это вызывает ошибку «bad uri»
но если я использую URI.encode для передачи закодированного URI, это вызывает EOFError (достигнут конец файла)
Что удивительно, так это то, что я могу видеть URL местоположения при использовании API FB API Apigee
вот метод перенаправления, который рекомендуется в сети: 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