diff --git a/lib/WetSock/WetSock.js b/lib/WetSock/WetSock.js index 451d467..f8d4d2a 100644 --- a/lib/WetSock/WetSock.js +++ b/lib/WetSock/WetSock.js @@ -32,6 +32,14 @@ export default class WetSock { handleMessage(ws, message) { const client = this.#clients.get(ws.data.clientId); + + try { + const messageData = JSON.parse(message); + if(typeof(messageData) == 'object' && messageData.constructor.name == 'Object') { + message = messageData; + } + } catch (err) {} + for(const plugin of this.#plugins) { if(plugin.onMessage(ws.data.clientId, message)) break; // plugin consumes message by returning a truthy value }