quetz-mod_python-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Graham Dumpleton (JIRA)" <j...@apache.org>
Subject [jira] Commented: (MODPYTHON-153) Add req.discard_request_body().
Date Sun, 02 Apr 2006 09:32:43 GMT
    [ http://issues.apache.org/jira/browse/MODPYTHON-153?page=comments#action_12372824 ] 

Graham Dumpleton commented on MODPYTHON-153:

Here is the prototype and documentation:

 * In HTTP/1.1, any method can have a body.  However, most GET handlers
 * wouldn't know what to do with a request body if they received one.
 * This helper routine tests for and reads any message body in the request,
 * simply discarding whatever it receives.  We need to do this because
 * failing to read the request body would cause it to be interpreted
 * as the next request on a persistent connection.
 * @param r The current request
 * @return error status if request is malformed, OK otherwise 
AP_DECLARE(int) ap_discard_request_body(request_rec *r);

Note that by rights, mod_python.publisher and mod_python.psp should both call this method
for GET requests. As pointed out in documentation above, if it didn't and GET request contained
content then not discarding it can stuff up a following request if a persistent connection
is used and multiple requests are pipelined.

> Add req.discard_request_body().
> -------------------------------
>          Key: MODPYTHON-153
>          URL: http://issues.apache.org/jira/browse/MODPYTHON-153
>      Project: mod_python
>         Type: New Feature

>   Components: core
>     Reporter: Graham Dumpleton
>     Assignee: Graham Dumpleton

> In HTTP/1.1 any method may include a request body, whereas in HTTP/1.0 only POST and
PUT were allowed to. To avoid any potential problems if a handler were trying to emulate in
part the default Apache handler for requests, in would be appropriate for a handler to ensure
that any request body is discarded. Apache provides a function specifically for this purpose
which is called ap_discard_request_body(). For completeness this function should be available
in the request object API as req.discard_request_body().

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message