如何解决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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。