Node.js expressjs 嵌套路由,

问题描述

index.js

const AuthRouter = require("./Routes/Auth/signup")

app.use("/account",AuthRouter)

注册.js

router.post("/",async (req,res) => {
          res.send("Signup")
})

此代码有效...

但我不会喜欢这个,它在 Express.js 中是可能的

index.js

const AuthRouter = require("./Routes/Auth/urls")

app.use("/account",AuthRouter)

urls.js

app.use("/signup",signup)
app.use("/login",login)

注册.js

router.post("/",res) => {
          res.send("Signup")
})

登录.js

router.post("/",res) => {
          res.send("Login")
})

解决方法

是的,你可以这样做。 例如,您必须为您的路由专门指定一个文件。像这样说routes.js

import express from "express";
import { Signup } from "./";

const router = express.Router();

router.post("/signup",signup);

export { router }

此外,您的 server.js 文件中必须包含以下内容:

import { router as usersRoutes } from "./api/routes/routes";
app.use("/api",usersRoutes);

现在,您可以将 HTTP POST 请求发送到 localhost:3000/api/signup

,

您也可以内联进行。我更喜欢那样。在服务器上是这样的:

app.use('/users',require('../utils/api/user'))

这样的路由文件在给定目录中称为 user.js:

const express = require('express')
const router = express.Router()

router.post('/login',(req,res) => {
    res.render('user',{title: 'User',user})
})
router.post('/signup',res) => {
  res.render('user',user})
}

module.exports = router

现在客户端登录的路由是/users/login,注册的路由是/users/signup

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...