Skip to content

Commit e982827

Browse files
committed
Fix web sockets not closing with error code
1 parent ed4bc5b commit e982827

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/node/routes/errors.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,11 @@ export const errorHandler: express.ErrorRequestHandler = async (err, req, res, n
6363

6464
export const wsErrorHandler: express.ErrorRequestHandler = async (err, req, res, next) => {
6565
logger.error(`${err.message} ${err.stack}`)
66-
;(req as WebsocketRequest).ws.end()
66+
let statusCode = 500
67+
if (errorHasStatusCode(err)) {
68+
statusCode = err.statusCode
69+
} else if (errorHasCode(err) && notFoundCodes.includes(err.code)) {
70+
statusCode = HttpCode.NotFound
71+
}
72+
;(req as WebsocketRequest).ws.end(`HTTP/1.1 ${statusCode} ${err.message}\r\n\r\n`)
6773
}

0 commit comments

Comments
 (0)