/** * Close the webHook * @return {Promise} */ close() { if (!this.isOpen()) { return Promise.resolve(); } return new Promise((resolve, reject) => { this._webServer.close(error => { if (error) return reject(error); this._open = false; return resolve(); }); }); }
async close() { try { if (this.socketServer) { await this.socketServer.close(); } if (!this.server) { throw new Error("CubeServer is not started."); } await this.server.close(); this.server = null; if (this.redirector) { await this.redirector.close(); this.redirector = null; } await this.core.releaseConnections(); } catch (e) { if (this.core.event) { await this.core.event("Dev Server Fatal Error", { error: (e.stack || e.message || e).toString() }); } throw e; } }
/** * Open WebHook by listening on the port * @return {Promise} */ open() { if (this.isOpen()) { return Promise.resolve(); } return new Promise(resolve => { this._webServer.listen(this.options.port, this.options.host, () => { debug('WebHook listening on port %s', this.options.port); this._open = true; return resolve(); }); }); }
function checkHttpOutboundData(data, t) { t.ok(isInteger(data.time), 'Timestamp is an integer'); t.equals(data.method, 'GET', 'Should report GET as HTTP request method'); t.equals(data.url, `https://localhost:${server.address().port}/`, `Should report https://localhost:${server.address().port}/ as URL`); if (data.requestHeaders) { t.equals(data.requestHeaders.hello, 'world', 'Should report world as value of hello header'); } }
tap.tearDown(function() { setTimeout(function() { server.close(); }, 1000); });
// Request with a callback https.get(`https://localhost:${server.address().port}/`, function(res) {});
tap.tearDown(function() { server.close(); });
https.createServer(options, (req, res) => { console.log(req.url); res.writeHead(200); res.end('hello world\n'); }).listen(6789);
server.on('request', function (req, res) { var acceptEncoding = req.headers['accept-encoding'] || '' if (/\bdeflate\b/.test(acceptEncoding)) { res.writeHead(200, { 'Content-Encoding': 'deflate' }) req.pipe(zlib.createDeflate()).pipe(res) } else if (/\bgzip\b/.test(acceptEncoding)) { res.writeHead(200, { 'Content-Encoding': 'gzip' }) req.pipe(zlib.createGzip()).pipe(res) } else { req.pipe(res) } })
(process.env.TLS_KEY && process.env.TLS_CERT ? https : http).createServer({ key: process.env.TLS_KEY ? fs.readFileSync(process.env.TLS_KEY) : undefined, cert: process.env.TLS_CERT ? fs.readFileSync(process.env.TLS_CERT) : undefined, }, app).listen(process.env.PORT || 8080, () => ( console.log(`Listening on port: ${server.address().port}`) ))
function createSecureServer(app) { // Server the app over https return https.createServer({ key: fs.readFileSync('./test/certs/server.key'), cert: fs.readFileSync('./test/certs/server.crt'), ca: fs.readFileSync('./test/certs/ca.crt'), requestCert: true, rejectUnauthorized: false }, app).listen('8443'); }
// Request with a callback https.get(`https://localhost:${server.address().port}/`, function(res) {});