mirror of
https://github.com/nodejs/node.git
synced 2025-05-06 00:30:06 +00:00

Remove the req._consumed property, as its use is completely superseded and not needed anymore. This was being set in the overridden .read(). PR-URL: https://github.com/nodejs/node/pull/18939 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com>
55 lines
1.2 KiB
JavaScript
55 lines
1.2 KiB
JavaScript
'use strict';
|
|
|
|
const common = require('../common');
|
|
const http = require('http');
|
|
const fs = require('fs');
|
|
|
|
const server = http.createServer(function(req, res) {
|
|
// this checks if the request gets dumped
|
|
req.on('resume', common.mustCall(function() {
|
|
console.log('resume called');
|
|
|
|
req.on('data', common.mustCallAtLeast(function(d) {
|
|
console.log('data', d);
|
|
}, 1));
|
|
}));
|
|
|
|
// end is not called as we are just exhausting
|
|
// the in-memory buffer
|
|
req.on('end', common.mustNotCall);
|
|
|
|
// this 'data' handler will be removed when dumped
|
|
req.on('data', common.mustNotCall);
|
|
|
|
// start sending the response
|
|
res.flushHeaders();
|
|
|
|
setTimeout(function() {
|
|
res.end('hello world');
|
|
}, common.platformTimeout(100));
|
|
});
|
|
|
|
server.listen(0, function() {
|
|
const req = http.request({
|
|
method: 'POST',
|
|
port: server.address().port
|
|
});
|
|
|
|
// Send the http request without waiting
|
|
// for the body
|
|
req.flushHeaders();
|
|
|
|
req.on('response', common.mustCall(function(res) {
|
|
// pipe the body as soon as we get the headers of the
|
|
// response back
|
|
fs.createReadStream(__filename).pipe(req);
|
|
|
|
res.resume();
|
|
|
|
// wait for the response
|
|
res.on('end', function() {
|
|
server.close();
|
|
});
|
|
}));
|
|
});
|