Получить HTTPS-ответ - PullRequest
       0

Получить HTTPS-ответ

17 голосов
/ 12 марта 2012

Это прекрасно работает:

require 'net/http'

uri = URI('http://api.twitter.com/1/statuses/user_timeline.json')
args = {include_entities: 0, include_rts: 0, screen_name: 'johndoe', count: 2, trim_user: 1}
uri.query = URI.encode_www_form(args)
resp = Net::HTTP.get_response(uri)
puts resp.body

Но изменение с http на https приводит к бессмысленной ошибке.Я не спрашиваю, почему ошибка не имеет смысла, я просто хотел бы знать, каковы самые близкие способы сделать get_response для https?

Я видел пример HTTPS в Net :: HTTP doc, но выглядит не очень впечатляюще и заставит меня вручную составить URL из моего хэша параметров - ничего хорошего.

1 Ответ

22 голосов
/ 12 марта 2012

Вот пример, который работает для меня под Ruby 1.9.3

require "net/http"

uri = URI.parse("https://api.twitter.com/1/statuses/user_timeline.json")
args = {include_entities: 0, include_rts: 0, screen_name: 'johndoe', count: 2, trim_user: 1}
uri.query = URI.encode_www_form(args)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri.request_uri)

response = http.request(request)
response.body
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...