gpt4 book ai didi

node.js - 路由器不适用于相同的模块。没有错误

转载 作者:太空宇宙 更新时间:2023-11-03 23:27:47 26 4
gpt4 key购买 nike

我正在尝试将快速路由器用于一个简单的项目,这是我的主 app.js 文件:

"use strict";

const express = require("express");
const mongodb = require("mongodb");
const path = require("path");
const index = require("./routes/index");
const error = require(__dirname + "/routes/error");

const app = express();

app.set("view engine", "ejs");

app.use("/",index);
app.use("/new",error);


app.listen(4000);

这是我的索引文件,导出和渲染没有问题。

const express = require("express");
const router = express.Router();

router.get("/",function(req,res){
res.render("index");
});

module.exports = router;

这是我的错误文件,当您向“/new”发送 get 请求时,它遵循完全相同的逻辑,但它显示“Cannot GET/new”并且没有其他错误。请告诉我这是怎么回事。

const express = require("express");
const router = express.Router();

router.get("/new",function(req,res){
res.render("error");
});

module.exports = router;

注意:我有一个index.ejs和error.ejs文件

最佳答案

您的路由网址中似乎缺少“/new”。

你要去

app.use("/new",error);

这意味着到该路由器的所有路由都将以“/new”开头。

然后在您的路由器中将路由定义为“/new”

router.get("/new",function(req,res){
res.render("error");
});

要访问此路线,您需要导航到“/new/new”

您是否尝试过使用以下 URL 的 GET 路由?

http://localhost:4000/new/new

我当然假设您已经保存了项目并重新启动了 app.js,手动或自动(nodemon 等)。

关于node.js - 路由器不适用于相同的模块。没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41854645/

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