【问题标题】:'Cannot GET /' in NodeJS Express-Handlebars, What to do?NodeJS Express-Handlebars 中的“无法获取 /”,该怎么办?
【发布时间】:2022-01-10 13:16:38
【问题描述】:

这是代码

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);

一切看起来都很完美,终端/logcat 中没有错误。

但是得到输出'Cannot GET /'。

有人可以帮我解决这个问题吗?提前致谢。

【问题讨论】:

    标签: node.js firebase express handlebars.js express-handlebars


    【解决方案1】:

    如果您没有指定您尝试获取是哪个页面,则会出现此消息Cannot GET /http://localhost:3000/ 在这种情况下。

    我能够启动您的代码,但我不得不禁用一些我无法访问的 importexportfunction

    // const firebase = require("firebase-admin");
    const express = require("express");
    const exphbs = require("express-handlebars");
    const port = 3000;
    
    // var hbsHelpers = exphbs.create({
    //   helpers: require("./helpers/handlebars.js").helpers,
    //   defaultLayout: "",
    //   extname: ".hbs",
    // });
    
    const app = express();
    app.engine("hbs", exphbs.engine());
    app.set("views", "./views");
    app.set("view engine", "hbs");
    
    app.get("/", (req, res) => {
      res.render("index.hbs");
    });
    
    // exports.app = functions.https.onRequest(app);
    
    app.listen(port, () => {
      console.log(`Server is  listening at http://localhost:${port}`);
    });
    

    文件夹和文件结构:


    输出:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-01
      • 2013-05-24
      • 1970-01-01
      • 2011-05-11
      • 1970-01-01
      • 2012-10-31
      • 2023-03-19
      • 1970-01-01
      相关资源
      最近更新 更多