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] }