Net::HTTP не работает при запросе головы

Я пытаюсь сделать запрос HTTP Head, используя Net::HTTP.

require 'net/http'

uri = URI("https://github.com/rails/rails")
http = Net::HTTP.new(uri.host, uri.port)
request = http.head(uri)

puts request

выходит из строя.

AFAICT, это потому, что Net:: HTTP ожидает тело ответа, которое никогда не придет. Как мне попросить Net:: HTTP сделать запрос, а не ждать тела ответа?

1 ответ

Решение

Если вы правильно следите за документацией, она работает просто отлично. Реализация библиотеки, вероятно, имеет некоторые предположения об использовании, когда она определяет, следует ли читать полезную нагрузку.

response = nil
Net::HTTP.start('github.com', :use_ssl => true) do |http|
  response = http.head('/rails/rails')
end

response.each { |k, v| [k, v] }
Другие вопросы по тегам