diff --git a/CHANGELOG.md b/CHANGELOG.md index a4b27e4d..1bc441d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.6](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.6) + +- fix(proxyReqWs): catch socket errors ([#763](https://github.com/chimurai/http-proxy-middleware/pull/763)) + ## [v2.0.5](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.5) - fix(error handler): add default handler to econnreset ([#759](https://github.com/chimurai/http-proxy-middleware/pull/759)) diff --git a/package.json b/package.json index dfe51dc2..4b47b4ca 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.5", + "version": "2.0.6", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/src/_handlers.ts b/src/_handlers.ts index 9d3be970..3737aa01 100644 --- a/src/_handlers.ts +++ b/src/_handlers.ts @@ -11,8 +11,16 @@ export function init(proxy: httpProxy, option: Options): void { proxy.on(eventName, handlers[eventName]); } - proxy.on('econnreset', (err, req, res, target) => { - logger.error(`[HPM] ECONNRESET: %s`, err); + // https://github.com/webpack/webpack-dev-server/issues/1642 + proxy.on('econnreset', (error, req, res, target) => { + logger.error(`[HPM] ECONNRESET: %O`, error); + }); + + // https://github.com/webpack/webpack-dev-server/issues/1642#issuecomment-1104325120 + proxy.on('proxyReqWs', (proxyReq, req, socket, options, head) => { + socket.on('error', (error) => { + logger.error(`[HPM] WebSocket error: %O`, error); + }); }); logger.debug('[HPM] Subscribed to http-proxy events:', Object.keys(handlers));