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.

“No se puede GET /” en NodeJS Express-Handlebars, ¿qué hacer?

Este es el código:

const functions = require('firebase-functions');
const firebase = require('firebase-admin');
const express = require('express');
const exphbs = require('express-handlebars');

var hbsHelpers = exphbs.create({
    helpers: require("./helpers/handlebars.js").helpers,
    defaultLayout: '',
    extname: '.hbs'
});

const app = express();
app.engine('hbs', hbsHelpers.engine);
app.set('views', './views');
app.set('view engine', 'hbs');

app.get('/', (request, response) => {
    response.render('index.hbs');
});

exports.app = functions.https.onRequest(app);

Todo parece perfecto y no hay errores en la terminal/logcat.

Pero obtengo el resultado ‘Cannot GET /’.

¿Alguien puede ayudarme con esto? Gracias de antemano.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El problema parece estar relacionado con la ruta en el método app.get(). Cuando se accede a la ruta raíz (/), el servidor debería renderizar el archivo index.hbs. Sin embargo, en el código actual, el servidor no puede encontrar una ruta válida.

    Una posible razón para esto es que el archivo index.hbs no se encuentra almacenado en el directorio correcto. La línea app.set('views', './views') establece el directorio donde se encuentran las plantillas de Handlebars. Asegúrese de que el archivo index.hbs esté almacenado en el directorio views.

    Otra posibilidad es que el servidor no esté en ejecución. Asegúrese de que las funciones de Firebase estén desplegadas y en ejecución verificando la consola de Firebase o utilizando la Firebase CLI.

    Finalmente, intente acceder al servidor a través de una ruta diferente, como /test. Si esto funciona, entonces el problema probablemente esté relacionado con la ruta raíz. En este caso, es posible que desee agregar un middleware que maneje la ruta raíz y redirija a la ruta /test.

    Esperamos que estos consejos le ayuden a resolver el problema con el servidor que no muestra el archivo index.hbs.

Comments are closed.