[ https://issues.apache.org/jira/browse/COUCHDB-1146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nathan Vander Wilt updated COUCHDB-1146: ---------------------------------------- Description: In the case of a GET request, CouchDB does not wait for the client to send any content promised by a Content-Length header but sends its response as soon as the last header is received. This can confuse some HTTP client libraries (such as node.js) that do not expect to receive a response before they have finished the request. To reproduce: $ telnet localhost 5984 GET / HTTP/1.1 Content-Length: 3 ... Expected results: No response from CouchDB until last "." is typed Actual results: CouchDB sends response and closes the client's connection as soon as request headers are done. >From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but is a bit "rude" and therefore can break fragile clients (eg https://github.com/joyent/node/issues/989). was: In the case of a GET request, CouchDB does not wait for the client to send any content promised by a Content-Length header but sends its response as soon as the last header is received. This can confuse some HTTP client libraries (such as node.js) that do not expect to receive a response before they have finished the request. To reproduce: $ telnet localhost 5984 GET / HTTP/1.1 Content-Length: 3 ... Expected results: No response from CouchDB until last "." is typed Actual results: CouchDB sends response and closes the client's connection as soon as request headers are done. >From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but is a bit "rude" and therefore can break fragile clients. > Content-Length ignored on GET requests > -------------------------------------- > > Key: COUCHDB-1146 > URL: https://issues.apache.org/jira/browse/COUCHDB-1146 > Project: CouchDB > Issue Type: Bug > Components: HTTP Interface > Reporter: Nathan Vander Wilt > > In the case of a GET request, CouchDB does not wait for the client to send any content promised by a Content-Length header but sends its response as soon as the last header is received. This can confuse some HTTP client libraries (such as node.js) that do not expect to receive a response before they have finished the request. > To reproduce: > $ telnet localhost 5984 > GET / HTTP/1.1 > Content-Length: 3 > ... > Expected results: > No response from CouchDB until last "." is typed > Actual results: > CouchDB sends response and closes the client's connection as soon as request headers are done. > From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but is a bit "rude" and therefore can break fragile clients (eg https://github.com/joyent/node/issues/989). -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira