mirror of
https://github.com/socketio/socket.io.git
synced 2026-01-11 16:08:24 -05:00
Compare commits
16 Commits
1.0.0-pre2
...
1.0.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
00ef9ca652 | ||
|
|
2febbce87d | ||
|
|
31c45862cb | ||
|
|
809e2bc3f8 | ||
|
|
10adcb089e | ||
|
|
5bc75ea944 | ||
|
|
cd4f6ad5e9 | ||
|
|
54e6c79014 | ||
|
|
237b234cab | ||
|
|
547440605d | ||
|
|
d763c8b6ea | ||
|
|
5d210ac46c | ||
|
|
ea89e520bc | ||
|
|
c8bf064b10 | ||
|
|
08fe191211 | ||
|
|
0842729c1f |
22
History.md
22
History.md
@@ -1,4 +1,26 @@
|
||||
|
||||
1.0.0 / 2014-05-28
|
||||
==================
|
||||
|
||||
* stable release
|
||||
|
||||
1.0.0-pre5 / 2014-05-22
|
||||
=======================
|
||||
|
||||
* package: bump `socket.io-client` for parser fixes
|
||||
* package: bump `engine.io`
|
||||
|
||||
1.0.0-pre4 / 2014-05-19
|
||||
=======================
|
||||
|
||||
* package: bump client
|
||||
|
||||
1.0.0-pre3 / 2014-05-17
|
||||
=======================
|
||||
|
||||
* package: bump parser
|
||||
* package: bump engine.io
|
||||
|
||||
1.0.0-pre2 / 2014-04-27
|
||||
=======================
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
var Emitter = require('events').EventEmitter;
|
||||
var parser = require('socket.io-parser');
|
||||
var url = require('url');
|
||||
var debug = require('debug')('socket.io:socket');
|
||||
var hasBin = require('has-binary-data');
|
||||
|
||||
@@ -65,6 +66,7 @@ function Socket(nsp, client){
|
||||
this.acks = {};
|
||||
this.connected = true;
|
||||
this.disconnected = false;
|
||||
this.handshake = this.buildHandshake();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -95,6 +97,25 @@ Socket.prototype.__defineGetter__('request', function(){
|
||||
return this.conn.request;
|
||||
});
|
||||
|
||||
/**
|
||||
* Builds the `handshake` BC object
|
||||
*
|
||||
* @api private
|
||||
*/
|
||||
|
||||
Socket.prototype.buildHandshake = function(){
|
||||
return {
|
||||
headers: this.request.headers,
|
||||
time: (new Date) + '',
|
||||
address: this.request.connection.address(),
|
||||
xdomain: !!this.request.headers.origin,
|
||||
secure: !!this.request.connection.encrypted,
|
||||
issued: +(new Date),
|
||||
url: this.request.url,
|
||||
query: url.parse(this.request.url, true).query || {}
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Emits to this client.
|
||||
*
|
||||
|
||||
14
package.json
14
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "socket.io",
|
||||
"version": "1.0.0-pre2",
|
||||
"version": "1.0.0",
|
||||
"description": "node.js realtime framework server",
|
||||
"keywords": [
|
||||
"realtime",
|
||||
@@ -11,15 +11,19 @@
|
||||
"socket",
|
||||
"io"
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/LearnBoost/socket.io"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "make test"
|
||||
},
|
||||
"dependencies": {
|
||||
"engine.io": "1.1.0",
|
||||
"socket.io-parser": "2.1.3",
|
||||
"socket.io-client": "1.0.0-pre2",
|
||||
"engine.io": "1.2.1",
|
||||
"socket.io-parser": "2.1.4",
|
||||
"socket.io-client": "1.0.0",
|
||||
"socket.io-adapter": "0.2.0",
|
||||
"has-binary-data": "0.1.0",
|
||||
"has-binary-data": "0.1.1",
|
||||
"debug": "0.7.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -26,12 +26,6 @@ describe('socket.io', function(){
|
||||
expect(version).to.be(require('socket.io-client/package').version);
|
||||
});
|
||||
|
||||
it('should have the same protocol version as client', function() {
|
||||
var pversion = require('socket.io-parser').protocol;
|
||||
var cparser = require('socket.io-client/node_modules/socket.io-parser');
|
||||
expect(pversion).to.be(cparser.protocol);
|
||||
});
|
||||
|
||||
describe('set', function() {
|
||||
it('should be able to set ping timeout to engine.io', function() {
|
||||
var srv = io(http());
|
||||
@@ -105,6 +99,40 @@ describe('socket.io', function(){
|
||||
expect().fail();
|
||||
});
|
||||
});
|
||||
|
||||
it('should set the handshake BC object', function(done){
|
||||
var httpSrv = http();
|
||||
var srv = io(httpSrv);
|
||||
|
||||
srv.on('connection', function(s) {
|
||||
expect(s.handshake).to.not.be(undefined);
|
||||
|
||||
// Headers set and has some valid properties
|
||||
expect(s.handshake.headers).to.be.an('object');
|
||||
expect(s.handshake.headers['user-agent']).to.be('node-XMLHttpRequest');
|
||||
|
||||
// Time set and is valid looking string
|
||||
expect(s.handshake.time).to.be.a('string');
|
||||
expect(s.handshake.time.split(' ').length > 0); // Is "multipart" string representation
|
||||
|
||||
// Address, xdomain, secure, issued and url set
|
||||
expect(s.handshake.address).to.not.be(undefined);
|
||||
expect(s.handshake.xdomain).to.be.a('boolean');
|
||||
expect(s.handshake.secure).to.be.a('boolean');
|
||||
expect(s.handshake.issued).to.be.a('number');
|
||||
expect(s.handshake.url).to.be.a('string');
|
||||
|
||||
// Query set and has some right properties
|
||||
expect(s.handshake.query).to.be.an('object');
|
||||
expect(s.handshake.query.EIO).to.not.be(undefined);
|
||||
expect(s.handshake.query.transport).to.not.be(undefined);
|
||||
expect(s.handshake.query.t).to.not.be(undefined);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
var socket = client(httpSrv);
|
||||
});
|
||||
});
|
||||
|
||||
describe('server attachment', function(){
|
||||
|
||||
Reference in New Issue
Block a user