Sobre o servidor nodejs.ouvir()

Comecei agora a aprender sobre servidores nodejs e websockets. Disse que tenho este servidor escrito em javascript usando socket.io e expresso.

var app = require('express')(),
    server = require('http').Server(app),
    io = require('socket.io')(server),
    port = process.env.PORT || 8080;

Existe alguma diferença entre:

server.listen(port, function(){
    console.log("listening port " + port);
});

e

server.listen(port);
console.log("listening port " + port);
Aparentemente, trabalham da mesma maneira.

Então o que realmente servidor.ouve.

Author: AeonZh, 2016-02-12

1 answers

De acordo com os documentos de server.listen:

Esta função é assíncrona. Quando o servidor for ligado, o evento de' escuta ' será emitido.

Ele usa um callback porque a declaração de log dentro do callback é uma confirmação de que a porta foi amarrada.

Aparentemente, trabalham da mesma maneira.

Incorrecto. Se você logar fora do callback, claro, ele ainda vai registrar o número de porta, mas isso acontece em paralelo com o real cercar o porto, e você não sabe se foi ou não bem sucedido.

 1
Author: Josh Beam, 2016-02-12 17:51:54