Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Express 是否有方法在发出node.js server.listen事件之前启动任务?_Express_Server - Fatal编程技术网

Express 是否有方法在发出node.js server.listen事件之前启动任务?

Express 是否有方法在发出node.js server.listen事件之前启动任务?,express,server,Express,Server,我希望能够在服务器开始侦听端口并获取请求之前启动异步任务, 我的解决方法是从onListening函数调用我的任务,当我的任务完成时,我将端口绑定到地址-但这种解决方法很难看 function onListening() { var addr = server.address(); var bind; // Following service gets the default plugins from the yamls and stores them i

我希望能够在服务器开始侦听端口并获取请求之前启动异步任务, 我的解决方法是从onListening函数调用我的任务,当我的任务完成时,我将端口绑定到地址-但这种解决方法很难看

    function onListening() {
        var addr = server.address();
        var bind;
// Following service gets the default plugins from the yamls and stores them in the DB.
        defaultOperationsService.getOOTBOperations().then(function success() {
            logger.info('Done getting default plugins operations!');

        }, function err(err) {
            logger.error('Error while trying to get operations' + err);

        }).done(function done() {
            bind = typeof addr === 'string' ? 'pipe ' + addr : 'port ' + addr.port;
            logger.debug('Listening on ' + bind);
        });
    }

向我介绍了一种更好的方法,可能是最好的方法,呼叫服务器。完成后,请侦听(端口):

 defaultOperationsService.getOOTBOperations().then(function success(){
    logger.info('Done getting default plugins operations!');

}, function err(err){
    logger.error('Error while trying to get operations' + err);

}).done(function done(){
    server.listen(port);
});

向我介绍了一种更好的方法,可能是最好的方法,呼叫服务器。完成后,请侦听(端口):

 defaultOperationsService.getOOTBOperations().then(function success(){
    logger.info('Done getting default plugins operations!');

}, function err(err){
    logger.error('Error while trying to get operations' + err);

}).done(function done(){
    server.listen(port);
});

向我介绍了一种更好的方法,可能是最好的方法,完成时调用server.listen(端口):defaultOperationsService.getOOTBOperations()。然后(函数success(){logger.info('done getting default plugins operations!');},函数err(err){logger.error('error while to get operations'+err);})。完成(函数done(){server.listen(port);});我被介绍了一种更好的方法,可能是最好的方法,完成后调用server.listen(port):defaultoperationservice.getOOTBOperations()。然后(函数success(){logger.info('done getting default plugins operations!');},函数err(err){logger.error('error试图获取操作时出错'+err);}).done(函数done(){server.listen(端口);});你不知道这对我有多大帮助,谢谢你!@hereForLearing我很高兴:)用async Wait做它会更漂亮:)是的,我正在做的,只是我没有想到的想法:)你不知道这对我有多大帮助,谢谢!@hereForLearing我很高兴:)用async Wait做它会更漂亮:)是的,我正在做的g、 这只是我没有想到的想法:)