diff --git a/.changeset/afraid-cobras-fix.md b/.changeset/afraid-cobras-fix.md new file mode 100644 index 000000000..e858791aa --- /dev/null +++ b/.changeset/afraid-cobras-fix.md @@ -0,0 +1,5 @@ +--- +"@uppy/companion": patch +--- + +fix the server crashing due a malformed json in a websocket message diff --git a/packages/@uppy/companion/src/server/socket.js b/packages/@uppy/companion/src/server/socket.js index 3ff169880..7602bd2af 100644 --- a/packages/@uppy/companion/src/server/socket.js +++ b/packages/@uppy/companion/src/server/socket.js @@ -73,10 +73,14 @@ export default function setupSocket(server) { }) ws.on('message', (jsonData) => { - const data = JSON.parse(jsonData.toString()) - // whitelist triggered actions - if (['pause', 'resume', 'cancel'].includes(data.action)) { - emitter().emit(`${data.action}:${token}`) + try { + const data = JSON.parse(jsonData.toString()) + // whitelist triggered actions + if (['pause', 'resume', 'cancel'].includes(data.action)) { + emitter().emit(`${data.action}:${token}`) + } + } catch (err) { + logger.error(err, 'websocket.error', Uploader.shortenToken(token)) } })