start run node guide create app node.js express

node.js - run - http.createServer(aplicación) v. http.Server(aplicación)



run node js app (1)

En la página web de socket.io, Get Started: Chat application , que se encuentra aquí:

http://socket.io/get-started/chat/

hay este código:

var app = require(''express'')(); var http = require(''http'').Server(app);

que podría ser reescrito un poco más claramente así:

var express = require(''express''); var http = require(''http''); var app = express(); var server = http.Server(app);

El ejemplo de socket.io usa http.Server () para crear un servidor. Sin embargo, los documentos express para app.listen() muestran un ejemplo donde el servidor se crea usando http.createServer(app) :

app.listen ()
Enlace y escuche las conexiones en el host y puerto dados. Este método es idéntico al http.Server # node () del nodo.

var express = require(''express''); var app = express(); app.listen(3000);

La aplicación devuelta por express () es, de hecho, una función de JavaScript, diseñada para pasarla a los servidores HTTP del nodo como una devolución de llamada para manejar las solicitudes. Esto le permite proporcionar versiones HTTP y HTTPS de su aplicación con la misma base de código fácilmente, ya que la aplicación no hereda de éstas (es simplemente una devolución de llamada):

var express = require(''express''); var https = require(''https''); var http = require(''http''); var app = express(); http.createServer(app).listen(80); https.createServer(options, app).listen(443);

El método app.listen () es un método conveniente para lo siguiente (si desea usar HTTPS o proporcionar ambos, use la técnica anterior):

app.listen = function(){ var server = http.createServer(this); return server.listen.apply(server, arguments); };

¿Cuál es la diferencia entre http.createServer(app) y http.Server(app) ?? Los documentos http no son de ayuda.