Due date set to 05/31/2011
----------------------------------------
Feature #3622: Net::HTTP does not wait to send request body with Expect: 100-continue
http://redmine.ruby-lang.org/issues/3622
Author: Eric Hodel
Status: Assigned
Priority: Normal
Assignee: Hiroshi NAKAMURA
Category: lib
Target version: 1.9.x
ruby -v: ruby 1.9.3dev (2010-07-07 trunk 28561) [x86_64-darwin10.4.0]
=begin
HTTP/1.1 allows a client to determine if the server will accept a request body using the Expect header with a value of 100-continue. If the server finds the request header the client sent acceptable it will return with a 100 Continue response and the client will then send the request body.
Instead of waiting for a 100 Continue response Net::HTTP immediately sends the request body and ignores any 100 Continue responses.
The current behavior defeats the purpose of the Expect: 100-continue value and the 100 Continue response code.
If I am attempting to upload a large file like a photo and to a server that requires HTTP authentication I will have to wait until the upload is complete before I can retrieve a 401 response for incorrect authentication.
I have attached a proposed patch that adds a continue timeout. Net::HTTP will wait up to the continue timeout before sending the request body.
=end
Merged the update from Eric Hodel. Thanks Eric, and I'm sorry for posting the patch which does not include full changes. Can't remember why I thought the tests I added run correctly...
I'll commit this.
https://github.com/nahi/ruby/compare/4e4649e13cd4175aab75...0fa41a6f7b86c17b0225
Status changed from Assigned to Closed
I close this since I believe r31860 includes the original intent of the patch from Eric. Please reopen this if it doesn't work.
----------------------------------------
Feature #3622: Net::HTTP does not wait to send request body with Expect: 100-continue
http://redmine.ruby-lang.org/issues/3622
Author: Eric Hodel
Status: Closed