Browse Source

http: Prefer 'binary' over 'ascii'

It's faster, because it doesn't have to check that each char is in the
ASCII plane.
v0.11.6-release
isaacs 12 years ago
parent
commit
1f9f863494
  1. 8
      lib/_http_outgoing.js

8
lib/_http_outgoing.js

@ -122,7 +122,7 @@ OutgoingMessage.prototype._send = function(data, encoding, callback) {
data = this._header + data;
} else {
this.output.unshift(this._header);
this.outputEncodings.unshift('ascii');
this.outputEncodings.unshift('binary');
this.outputCallbacks.unshift(null);
}
this._headerSent = true;
@ -421,7 +421,7 @@ OutgoingMessage.prototype.write = function(chunk, encoding, callback) {
if (this.connection)
this.connection.cork();
this._send(len.toString(16), 'ascii', null);
this._send(len.toString(16), 'binary', null);
this._send(crlf_buf, null, null);
this._send(chunk, encoding, null);
ret = this._send(crlf_buf, null, callback);
@ -507,10 +507,10 @@ OutgoingMessage.prototype.end = function(data, encoding, callback) {
}
if (this.chunkedEncoding) {
ret = this._send('0\r\n' + this._trailer + '\r\n', 'ascii', finish);
ret = this._send('0\r\n' + this._trailer + '\r\n', 'binary', finish);
} else {
// Force a flush, HACK.
ret = this._send('', 'ascii', finish);
ret = this._send('', 'binary', finish);
}
if (this.connection && data)

Loading…
Cancel
Save