Remove jwt, not needed
parent
d20f0c161f
commit
3043098f0c
|
|
@ -3,7 +3,6 @@ const axios = require('axios');
|
|||
const Logger = require('./Logger');
|
||||
const Lobby = require('./Lobby');
|
||||
const { v4: uuidv4 } = require('uuid');
|
||||
const jwt = require('jsonwebtoken');
|
||||
const userRoles = require('../userRoles');
|
||||
const config = require('../config/config');
|
||||
|
||||
|
|
@ -128,31 +127,15 @@ class Room extends EventEmitter
|
|||
{
|
||||
logger.info('handlePeer() [peer:"%s", roles:"%s", token:"%s"]', peer.id, peer.roles, token);
|
||||
|
||||
let verifiedPeer = false;
|
||||
// This peer is returning, reconnect
|
||||
const verifiedPeer = token && token === this._uuid;
|
||||
|
||||
if (token)
|
||||
{
|
||||
try
|
||||
{
|
||||
const decoded = jwt.verify(token, this._uuid);
|
||||
|
||||
if (decoded.id === peer.id)
|
||||
verifiedPeer = true;
|
||||
}
|
||||
catch (err)
|
||||
{
|
||||
logger.warn('handlePeer() | invalid token');
|
||||
}
|
||||
}
|
||||
|
||||
// Allow reconnections, remove old peer
|
||||
// Should not happen
|
||||
if (this._peers[peer.id])
|
||||
{
|
||||
logger.warn(
|
||||
'handleConnection() | there is already a peer with same peerId [peer:"%s"]',
|
||||
peer.id);
|
||||
|
||||
this._peers[peer.id].close();
|
||||
}
|
||||
|
||||
// Returning user
|
||||
|
|
@ -373,9 +356,7 @@ class Room extends EventEmitter
|
|||
}
|
||||
else
|
||||
{
|
||||
const token = jwt.sign({ id: peer.id }, this._uuid, { noTimestamp: true });
|
||||
|
||||
peer.socket.handshake.session.token = token;
|
||||
peer.socket.handshake.session.token = this._uuid;
|
||||
|
||||
peer.socket.handshake.session.save();
|
||||
|
||||
|
|
|
|||
|
|
@ -25,7 +25,6 @@
|
|||
"express-socket.io-session": "^1.3.5",
|
||||
"helmet": "^3.21.2",
|
||||
"ims-lti": "^3.0.2",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"mediasoup": "^3.5.5",
|
||||
"openid-client": "^3.7.3",
|
||||
"passport": "^0.4.0",
|
||||
|
|
|
|||
|
|
@ -464,11 +464,30 @@ async function runWebSocketServer()
|
|||
|
||||
queue.push(async () =>
|
||||
{
|
||||
const room = await getOrCreateRoom({ roomId });
|
||||
const peer = new Peer({ id: peerId, roomId, socket });
|
||||
|
||||
const { token } = socket.handshake.session;
|
||||
|
||||
const room = await getOrCreateRoom({ roomId });
|
||||
|
||||
let peer = peers.get(peerId);
|
||||
|
||||
if (peer)
|
||||
{
|
||||
if (token)
|
||||
{
|
||||
peer.close();
|
||||
|
||||
peer = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
socket.disconnect(true);
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
peer = new Peer({ id: peerId, roomId, socket });
|
||||
|
||||
peers.set(peerId, peer);
|
||||
|
||||
peer.on('close', () => peers.delete(peerId));
|
||||
|
|
|
|||
Loading…
Reference in New Issue