Module: HTTPX::Plugins::Expect::ConnectionMethods

Defined in:
lib/httpx/plugins/expect.rb

Instance Method Summary collapse

Instance Method Details

#send_request_to_parser(request) ⇒ Object



107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# File 'lib/httpx/plugins/expect.rb', line 107

def send_request_to_parser(request)
  super

  return unless request.headers["expect"] == "100-continue"

  expect_timeout = request.options.expect_timeout

  return if expect_timeout.nil? || expect_timeout.infinite?

  set_request_timeout(:expect_timeout, request, expect_timeout, :expect, i[body response]) do
    # expect timeout expired
    if request.state == :expect && !request.expects?
      Expect.no_expect_store.add(request.origin)
      request.headers.delete("expect")
      consume
    end
  end
end