У меня есть этот код:HTTP не возвращает JSON в Рубине
base_twitter_url = 'http://cdn.api.twitter.com/1/urls/count.json?url='
raw_url = base_twitter_url + 'http://www.google.com'
url = URI.parse(raw_url)
req = Net::HTTP::Get.new(url.to_s)
res = Net::HTTP.start(url.host, url.port) {|http|
http.request(req)
}
p res.body
Что я ожидаю возвращения JSON, потому что, делая это из браузера, как: https://cdn.api.twitter.com/1/urls/count.json?url=http://www.google.com
я получаю JSON обратно.
Но не повезло. Что я здесь делаю неправильно?
EDIT:
Я просто попытался это из исходного файла рубина, и она отлично работает. Однако, когда вы делаете это из действия контроллера Rails, я не получаю никаких результатов. Невозможно понять, почему.
Так что же вы получаете обратно вместо этого? – maerics
Я ничего не вижу, если я делаю res.inspect –
Что такое код состояния ответа ('res.code')? Обычно это первое место, когда вы отлаживаете HTTP-материал. – maerics