The twisted.web server should not ignore "Expect: 100-continue"
|Reported by:||Itamar Turner-Trauring||Owned by:||Itamar Turner-Trauring|
branch-diff, diff-cov, branch-cov, buildbot
From the RFC: "The purpose of the 100 (Continue) status ... is to allow a client that is sending a request message with a request body to determine if the origin server is willing to accept the request (based on the request headers) before the client sends the request body."
See http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.3 for details.
Supporting the "Expect: 100-continue" header on an API level is currently difficult, since twisted.web always reads the full request body before handing the request to business logic code. Until we can allow custom Resources to handle requests before the body is read, we should at the very least return the appropriate "100 (Continue)" response to the HTTP client so it can continue.