From db6711e3f74bb6b8d320461e21c0bec09d09b91d Mon Sep 17 00:00:00 2001 From: Frazer Smith Date: Fri, 10 Jan 2025 13:02:37 +0000 Subject: [PATCH] perf(index): cache status code regex (#320) --- index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/index.js b/index.js index bf0fdd4..0539643 100644 --- a/index.js +++ b/index.js @@ -9,6 +9,7 @@ const Duplexify = require('duplexify') const kWs = Symbol('ws-socket') const kWsHead = Symbol('ws-head') +const statusCodeReg = /HTTP\/1.1 (\d+)/u function fastifyWebsocket (fastify, opts, next) { fastify.decorateRequest('ws', null) @@ -74,7 +75,7 @@ function fastifyWebsocket (fastify, opts, next) { ws.setSocket(clientStream, head, { maxPayload: 0 }) } else { clientStream.removeListener('data', onData) - const statusCode = Number(chunk.toString().match(/HTTP\/1.1 (\d+)/)[1]) + const statusCode = Number(statusCodeReg.exec(chunk.toString())[1]) reject(new Error('Unexpected server response: ' + statusCode)) } }