Skip to content

Instantly share code, notes, and snippets.

@tomalex0
Forked from jfromaniello/gist:8418116
Last active August 29, 2015 14:06
Show Gist options
  • Save tomalex0/326aff3be7ddea82e08c to your computer and use it in GitHub Desktop.
Save tomalex0/326aff3be7ddea82e08c to your computer and use it in GitHub Desktop.
var WebSocketServer = require('ws').Server;
var wss = new WebSocketServer({port: 8080});
var jwt = require('jsonwebtoken');
/**
The way I like to work with 'ws' is to convert everything to an event if possible.
**/
function toEvent (message) {
try {
var event = JSON.parse(message);
this.emit(event.type, event.payload);
} catch(err) {
console.log('not an event' , err);
}
}
wss.on('connection', function(ws) {
ws.on('message', toEvent)
.on('authenticate', function (data) {
jwt.verify(data.token, options, function (err, decoded) {
//now is authenticated
});
});
ws.send('something');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment