Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fa7dcf365c | |||
| 018ef183bf | |||
| b545e8b80f | |||
| 07f5ef6f95 |
@@ -6,3 +6,6 @@ node_js:
|
||||
- "0.10"
|
||||
- "0.11"
|
||||
|
||||
before_install:
|
||||
- '[ "${TRAVIS_NODE_VERSION}" = "0.6" ] && npm conf set strict-ssl false || true'
|
||||
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
### 0.7.2 / 2013-12-29
|
||||
|
||||
* Make sure the `close` event is emitted by clients on Node v0.10
|
||||
|
||||
|
||||
### 0.7.1 / 2013-12-03
|
||||
|
||||
* Support the `maxLength` websocket-driver option
|
||||
|
||||
@@ -156,7 +156,7 @@ var ws = new WebSocket.Client(url, protocols, options);
|
||||
* `headers` - an object containing key-value pairs representing HTTP headers to
|
||||
be sent during the handshake process
|
||||
* `maxLength` - the maximum allowed size of incoming message frames, in bytes.
|
||||
The default value is `2^30 - 1`, or 1 byte short of 1 GiB.
|
||||
The default value is `2^26 - 1`, or 1 byte short of 64 MiB.
|
||||
* `ping` - an integer that sets how often the WebSocket should send ping
|
||||
frames, measured in seconds
|
||||
|
||||
|
||||
@@ -20,16 +20,9 @@ var WebSocket = function(request, socket, body, protocols, options) {
|
||||
var catchup = function() { self._stream.removeListener('data', catchup) };
|
||||
this._stream.on('data', catchup);
|
||||
|
||||
this._stream.setTimeout(0);
|
||||
this._stream.setNoDelay(true);
|
||||
|
||||
this._driver.io.write(body);
|
||||
API.call(this, options);
|
||||
|
||||
['error', 'end'].forEach(function(event) {
|
||||
this._stream.on(event, function() { self._finalize('', 1006) });
|
||||
}, this);
|
||||
|
||||
process.nextTick(function() {
|
||||
self._driver.start();
|
||||
});
|
||||
|
||||
@@ -23,6 +23,20 @@ var API = function(options) {
|
||||
|
||||
var self = this;
|
||||
|
||||
this._stream.setTimeout(0);
|
||||
this._stream.setNoDelay(true);
|
||||
|
||||
['close', 'end'].forEach(function(event) {
|
||||
this._stream.on(event, function() { self._finalize('', 1006) });
|
||||
}, this);
|
||||
|
||||
this._stream.on('error', function(error) {
|
||||
var event = new Event('error', {message: 'Network error: ' + self.url + ': ' + error.message});
|
||||
event.initEvent('error', false, false);
|
||||
self.dispatchEvent(event);
|
||||
self._finalize('', 1006);
|
||||
});
|
||||
|
||||
this._driver.on('open', function(e) { self._open() });
|
||||
this._driver.on('message', function(e) { self._receiveMessage(e.data) });
|
||||
this._driver.on('close', function(e) { self._finalize(e.reason, e.code) });
|
||||
|
||||
@@ -31,21 +31,9 @@ var Client = function(url, protocols, options) {
|
||||
: net.createConnection(this._uri.port || 80, this._uri.hostname);
|
||||
|
||||
this._stream = connection;
|
||||
this._stream.setTimeout(0);
|
||||
this._stream.setNoDelay(true);
|
||||
|
||||
if (!secure) this._stream.on('connect', onConnect);
|
||||
|
||||
API.call(this, options);
|
||||
|
||||
this._stream.on('end', function() { self._finalize('', 1006) });
|
||||
|
||||
this._stream.on('error', function(error) {
|
||||
var event = new Event('error', {message: 'Network error: ' + url + ': ' + error.message});
|
||||
event.initEvent('error', false, false);
|
||||
self.dispatchEvent(event);
|
||||
self._finalize('', 1006);
|
||||
});
|
||||
};
|
||||
util.inherits(Client, API);
|
||||
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@
|
||||
, "keywords" : ["websocket", "eventsource"]
|
||||
, "license" : "MIT"
|
||||
|
||||
, "version" : "0.7.1"
|
||||
, "version" : "0.7.2"
|
||||
, "engines" : {"node": ">=0.4.0"}
|
||||
, "main" : "./lib/faye/websocket"
|
||||
, "dependencies" : {"websocket-driver": ">=0.3.1"}
|
||||
|
||||
Reference in New Issue
Block a user