He estado tratando de utilizar Express.js para el lanzamiento de un sitio web. Al principio, yo estaba usando
app.set('port', 8080) pero el navegador no es capaz de conectarse a la página. Después, he cambiado el código para app.listen(8080) y la página web apareció normalmente.

Esto me llevó a preguntarme, ¿cuál es la diferencia entre estas dos funciones?

OriginalEl autor peco | 2014-08-16

2 Comentarios

  1. 29

    app.set('port', 8080) es similar a la configuración de una “variable” nombre port a 8080, que se puede acceder más tarde sobre el uso de app.get('port'). El acceso a su sitio web desde el navegador realmente no trabajo porque todavía no se lo digas a tu app para escuchar y aceptar conexiones.

    app.listen(8080) en el otro lado está a la escucha de conexiones en el puerto 8080. Esta es la parte donde le dices a tu app para escuchar y aceptar conexiones. Acceder a la aplicación desde el navegador utilizando localhost:8080 funcionará si tienes esto en tu código.

    Los dos comandos se pueden usar juntos:

    app.set('port', 8080);
    app.listen(app.get('port'));
    Puede usted explicar por qué es una práctica común para almacenar el valor del puerto con app.set, o qué cualquier cosa que jamás podría ser almacenados en lugar de en las variables normales?
    almacenar el valor del puerto con app.set podría ser un mal ejemplo aquí, pero para otros valores tiene sentido para almacenar el uso de app.set en lugar de en las variables normales, como por ejemplo app.set('views', 'somepath'); que dice expresar dónde buscar puntos de vista. Los valores se almacenan utilizando app.set podría ser utilizado internamente en express o algunos otros paquetes que usa la aplicación.

    OriginalEl autor Arnelle Balane

  2. 2

    Es lo suficientemente simple como para declarar una variable de servidor en la parte inferior de la página y definir el puerto que desee. Usted puede consola.registro de el puerto, para que sea visible en la línea de comandos.

    var server = app.listen(8080,function(){
       console.log('express server listening on port ' + server.address().port);
        })
    Sólo las cabezas para arriba, port ya no es una función. En el ejemplo anterior: server.address().port de trabajo.

    OriginalEl autor Winnemucca

Dejar respuesta

Please enter your comment!
Please enter your name here