es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

process.env.CONNECT_DATABASE está indefinido mientras console.log.

const express = require(“express”);
const app = express();
const path = require(“path”);

require(“dotenv”).config({ path: path.resolve(__dirname, “./.env”) });

const mongoose = require(“mongoose”);

console.log(process.env.DB_CONNECT);
// mongoose.connect(
// process.env.DB_CONNECT,
// { useNewUrlParse: true },

// () => console.log(“connected to db!”)
// );

const authRoute = require(“./routes/auth”);

app.use(“/api/user”, authRoute);

app.listen(3000, () => console.log(“serve is up”));

const router = require(“express”).Router();

router.post(“/register”, (req, res) => {
res.send(“Register”);
});

// router.post(“/login”);

module.exports = router;

DB_CONNECT=”mongodb+srv://:@fypdatabase.quhdl.mongodb.net/myFirstDatabase?retryWrites=true&w=majority”

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Según el código proporcionado, parece que ya has cargado las variables de entorno utilizando dotenv. Sin embargo, el valor de DB_CONNECT aparece como indefinido cuando intentas registrarlo.

    Hay algunas cosas que puedes verificar:

    1. Asegúrate de que tu archivo .env esté en el mismo directorio que tu script principal (donde estás llamando a mongoose.connect()). Puedes verificar la ruta usando path.resolve(__dirname, "./.env") como se muestra en el código.
    2. Asegúrate de haber definido DB_CONNECT en tu archivo .env y de que esté escrito correctamente. Verifica si hay errores tipográficos y asegúrate de que no haya espacios ni caracteres adicionales.

    3. Verifica que hayas instalado correctamente el paquete dotenv. Puedes intentar desinstalarlo y volver a instalarlo, o verificar la versión con npm list dotenv.

    Una vez que hayas confirmado que lo anterior es correcto, intenta reiniciar la aplicación y verificar nuevamente el valor de process.env.DB_CONNECT. Si aún aparece como indefinido, podría haber un problema con la forma en que estás cargando las variables de entorno.

    Puedes intentar agregar algunas declaraciones console.log para ver dónde podría estar el problema:

    const dotenv = require("dotenv");
    dotenv.config();
    
    console.log(process.env); // verifica si dotenv cargó todas las variables de entorno correctamente
    console.log(process.env.DB_CONNECT); // verifica si DB_CONNECT está definido
    console.log(path.resolve(__dirname, "./.env")); // verifica la ruta al archivo .env
    

    Al agregar declaraciones console.log como esta, puedes aislar el problema y reducir el alcance de dónde podría estar el problema.

Comments are closed.