fix: refactor verifyClient to use promise instead of async/await for token validation
This commit is contained in:
@@ -12,7 +12,7 @@ module.exports = function setupSensorWebSocket(server) {
|
|||||||
server,
|
server,
|
||||||
path: wsPath,
|
path: wsPath,
|
||||||
perMessageDeflate: false,
|
perMessageDeflate: false,
|
||||||
verifyClient: async (info, callback) => {
|
verifyClient: (info, callback) => {
|
||||||
console.log('[WS|verifyClient] URL:', info.req.url);
|
console.log('[WS|verifyClient] URL:', info.req.url);
|
||||||
const { query } = url.parse(info.req.url, true);
|
const { query } = url.parse(info.req.url, true);
|
||||||
const token = query.token;
|
const token = query.token;
|
||||||
@@ -22,17 +22,16 @@ module.exports = function setupSensorWebSocket(server) {
|
|||||||
return callback(false, 401, 'token not passed');
|
return callback(false, 401, 'token not passed');
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
tokenStore.consumeToken(token).then((sessionData) => {
|
||||||
const sessionData = await tokenStore.consumeToken(token);
|
|
||||||
if (!sessionData) {
|
if (!sessionData) {
|
||||||
return callback(false, 401, 'token not valid or expired');
|
return callback(false, 401, 'token not valid or expired');
|
||||||
}
|
}
|
||||||
|
|
||||||
info.req.sensorSession = sessionData;
|
info.req.sensorSession = sessionData;
|
||||||
callback(true);
|
callback(true);
|
||||||
} catch (error) {
|
}).catch((error) => {
|
||||||
callback(false, 500, `internal server error: ${error}`);
|
callback(false, 500, `internal server error: ${error}`);
|
||||||
}
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user