gpt4 book ai didi

javascript - 在 express 中使用自己文件中定义的多个路由器

转载 作者:行者123 更新时间:2023-11-30 15:06:32 25 4
gpt4 key购买 nike

我是 Node.js 和 express 框架的新手。当我试图从我的主页路由转到 signuplogin 路由时出现错误。我也在 stackoveflow 中尝试了所有类似的问题,但没有一个对我有用,所以我想发布我自己的问题。

这是我的app.js

var homepage = require('./routes/homepage');
var signupLogin = require('./routes/signuplogin');

var app = express();

app.use("/", homepage);
app.use("/signup-login", signupLogin);

这是我在 routes 目录中的 homepage.js

var express = require('express');
var homepageRouter = express.Router();

/* GET Homepage. */
homepageRouter.get("/", function(req, res, next) {
res.render('../views/homepage/homepage.hbs');
});

module.exports = homepageRouter;

这是我在 routes 目录中的 signup-login.js

var express = require('express');
var signupLoginRouter = express.Router();

/* GET Signup Login Page. */
signupLoginRouter.get("/signup-login", function(req, res, next) {
res.send('respond with a resource');
});

module.exports = signupLoginRouter;

嗯,我的 "/" 路由工作得很好,但是当我尝试访问 "/signup-login" 路由时它显示 404。

我还将路由更改为 "/signuplogin",因为我认为除了路由中的 "-" 字符外,它可能没有。但这并没有奏效。任何解决方案/建议?

最佳答案

您在 signup-login.js 文件中犯了一个错误。用这个更正代码 -

/* GET Signup Login Page. */
signupLoginRouter.get("/", function(req, res, next) {
res.send('respond with a resource');
});

根据您的代码,注册页面的实际 url 变为“/signup-login/signup-login”

您不需要在页面中再次添加 singup-login url 路径。这已经在您的主路由器中引用了。

关于javascript - 在 express 中使用自己文件中定义的多个路由器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45660470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com