Получить только заголовки ответа в em_http_request

Как я могу получить только заголовки ответа в em_http_request?

Я пытался использовать этот код:

EventMachine.run do
  http = EventMachine::HttpRequest.new('my_url').get
  http.headers do |headers|
    Fiber.current.resume headers
  end
end

но я не хочу получать все тело. Как я могу остановить выполнение запроса?http.close не работает

UPD
http.instance_variable_get(:'@conn').close мне помогает, но может быть вы знаете более интересное решение

1 ответ

Если вы не хотите тело, вы должны сделать HEAD запрос вместоGET, Чтобы завершить цикл обработки событий, вам нужно явно вызватьEventMachine.stop,

EventMachine.run do
  http = EventMachine::HttpRequest.new('my_url').head
  http.headers do |headers|
    # do something with headers

    EventMachine.stop
  end
end
Другие вопросы по тегам