Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

210
Vistas
Express Listen no funciona y el puerto se toma de env automáticamente

Después de escribir todos los puntos finales, decidí agregar PORTS y JWT_key a .ENV usando el paquete dotenv, todo funcionó perfectamente hasta que decidí hacer la prueba de integración ahora express.listen no funciona y automáticamente toma el puerto del archivo .ENV y no no como

esto es app.js

 require("express-async-errors"); const Express = require("express"); const app= Express(); const winston = require("winston"); require("./start/logger")(); require("./start/routes")(express); require("./start/db")(); require("./start/config")(); require("dotenv").config(); const port = process.env.PORT || 5000; const server = app.listen(port, () => console.log(`listening on port ${port}`) ); module.exports = server;

no obtiene nada en la consola

este es un archivo .env

 PORT=9000 jwtPrivateKey="myPrivateKey"

tan pronto como elimino el puerto del archivo .env, el servidor deja de responder

este es mi archivo de prueba

 const request = require("supertest"); let server; describe("/api/genres", () => { beforeEach(() => { server = require("../../app"); }); afterEach(() => { server.close(); }); describe("GET /", () => { it("should return all genres", async () => { jest.setTimeout(2000); const res = await request(server).get("/api/genres"); expect(res.status).toBe(200); }); }); });

por favor guíame a través de esto. No hice un repositorio de git para esto, de lo contrario lo habría reiniciado.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

En su archivo .env, cambie las variables de

 port=9000

a

 PORT=9000

Está recibiendo el error porque las variables dentro de su .env no están en mayúsculas, sin embargo, en su código está usando process.env.PORT donde están en mayúsculas.

Siguiendo con lo que ha dicho Heiko, es una buena convención usar app en lugar de express . Cambiaría la parte superior del código a:

 const Express = require("express"); const app = Express();

Y luego cambia express.listen() a:

 const port = process.env.PORT || 5000; app.listen(port, () => console.log(`listening on port ${port}`) );

¡Gracias! Espero que esto ayude.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda