diff --git a/lib/servers/baseServer.js b/lib/servers/baseServer.js deleted file mode 100644 index e22bd2a058..0000000000 --- a/lib/servers/baseServer.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; - -// base class that users should extend if they are making their own -// server implementation -module.exports = class BaseServer { - constructor(server) { - this.server = server; - } -}; diff --git a/lib/servers/sockjsServer.js b/lib/servers/sockjsServer.js deleted file mode 100644 index 8c67abd4e5..0000000000 --- a/lib/servers/sockjsServer.js +++ /dev/null @@ -1,64 +0,0 @@ -'use strict'; - -/* eslint-disable - class-methods-use-this, - func-names -*/ -const sockjs = require('sockjs'); -const BaseServer = require('./BaseServer'); - -// Workaround for sockjs@~0.3.19 -// sockjs will remove Origin header, however Origin header is required for checking host. -// See https://github.com/webpack/webpack-dev-server/issues/1604 for more information -{ - // eslint-disable-next-line global-require - const SockjsSession = require('sockjs/lib/transport').Session; - const decorateConnection = SockjsSession.prototype.decorateConnection; - SockjsSession.prototype.decorateConnection = function(req) { - decorateConnection.call(this, req); - const connection = this.connection; - if ( - connection.headers && - !('origin' in connection.headers) && - 'origin' in req.headers - ) { - connection.headers.origin = req.headers.origin; - } - }; -} - -module.exports = class SockJSServer extends BaseServer { - // options has: error (function), debug (function), server (http/s server), path (string) - constructor(server) { - super(server); - this.socket = sockjs.createServer({ - // Use provided up-to-date sockjs-client - sockjs_url: '/__webpack_dev_server__/sockjs.bundle.js', - // Limit useless logs - log: (severity, line) => { - if (severity === 'error') { - this.server.log.error(line); - } else { - this.server.log.debug(line); - } - }, - }); - - this.socket.installHandlers(this.server.listeningApp, { - prefix: this.server.sockPath, - }); - } - - send(connection, message) { - connection.write(message); - } - - close(connection) { - connection.close(); - } - - // f should return the resulting connection - onConnection(f) { - this.socket.on('connection', f); - } -};