'use strict';
|
|
const http = require('http');
|
const SERVER = Symbol('http_server');
|
|
module.exports = app => {
|
let server = app[SERVER] || app.callback();
|
if (typeof server === 'function') {
|
server = http.createServer(server);
|
// cache server, avoid create many times
|
app[SERVER] = server;
|
// emit server event just like egg-cluster does
|
// https://github.com/eggjs/egg-cluster/blob/master/lib/app_worker.js#L52
|
app.emit('server', server);
|
}
|
return server;
|
};
|