http: add flushHeaders and deprecate flush
PR-URL: https://github.com/iojs/io.js/pull/1156 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Christian Tellnes <christian@tellnes.no> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
This commit is contained in:
parent
68d4bed2fd
commit
b2e00e38dc
@ -866,7 +866,7 @@ the client should send the request body.
|
|||||||
Emitted when the request has been aborted by the client. This event is only
|
Emitted when the request has been aborted by the client. This event is only
|
||||||
emitted on the first call to `abort()`.
|
emitted on the first call to `abort()`.
|
||||||
|
|
||||||
### request.flush()
|
### request.flushHeaders()
|
||||||
|
|
||||||
Flush the request headers.
|
Flush the request headers.
|
||||||
|
|
||||||
@ -875,7 +875,7 @@ call `request.end()` or write the first chunk of request data. It then tries
|
|||||||
hard to pack the request headers and data into a single TCP packet.
|
hard to pack the request headers and data into a single TCP packet.
|
||||||
|
|
||||||
That's usually what you want (it saves a TCP round-trip) but not when the first
|
That's usually what you want (it saves a TCP round-trip) but not when the first
|
||||||
data isn't sent until possibly much later. `request.flush()` lets you bypass
|
data isn't sent until possibly much later. `request.flushHeaders()` lets you bypass
|
||||||
the optimization and kickstart the request.
|
the optimization and kickstart the request.
|
||||||
|
|
||||||
### request.write(chunk[, encoding][, callback])
|
### request.write(chunk[, encoding][, callback])
|
||||||
|
@ -630,10 +630,14 @@ OutgoingMessage.prototype._flush = function() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
OutgoingMessage.prototype.flush = function() {
|
OutgoingMessage.prototype.flushHeaders = function() {
|
||||||
if (!this._header) {
|
if (!this._header) {
|
||||||
// Force-flush the headers.
|
// Force-flush the headers.
|
||||||
this._implicitHeader();
|
this._implicitHeader();
|
||||||
this._send('');
|
this._send('');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
OutgoingMessage.prototype.flush = util.deprecate(function() {
|
||||||
|
this.flushHeaders();
|
||||||
|
}, 'flush is deprecated. Use flushHeaders instead.');
|
||||||
|
20
test/parallel/test-http-flush-headers.js
Normal file
20
test/parallel/test-http-flush-headers.js
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
'use strict';
|
||||||
|
const common = require('../common');
|
||||||
|
const assert = require('assert');
|
||||||
|
const http = require('http');
|
||||||
|
|
||||||
|
const server = http.createServer();
|
||||||
|
server.on('request', function(req, res){
|
||||||
|
assert(req.headers['foo'], 'bar');
|
||||||
|
res.end('ok');
|
||||||
|
server.close();
|
||||||
|
});
|
||||||
|
server.listen(common.PORT, '127.0.0.1', function() {
|
||||||
|
let req = http.request({
|
||||||
|
method: 'GET',
|
||||||
|
host: '127.0.0.1',
|
||||||
|
port: common.PORT,
|
||||||
|
});
|
||||||
|
req.setHeader('foo', 'bar');
|
||||||
|
req.flushHeaders();
|
||||||
|
});
|
Loading…
x
Reference in New Issue
Block a user