index.js import express from "express"; import cors from "cors"; import mongoose from "mongoose"; import { userRouter } from "./routes/users.js" import { recipesRouter } from "./routes/recipes.js" const app = express(); app.use(express.json()); app.use(cors()); app.use("/auth", userRouter); app.use("/recipes", recipesRouter); mongoose.connect( "xxxxxxxxxxxxxxxxxxxxxx" ); app.listen(3001, () => console.log("SERVER STARTED"));
Router
import express from "express"; import mongoose from "mongoose"; import { RecipeModel } from "../models/Recipes.js" import { UserModel } from "../models/User.js"; const router = express.Router(); router.get("/createrecipe/:id", async (req, res) =>{ let result =await RecipeModel.findOne({id:req.params.id}); if(result){ res.send(result) }else{ res.send('no recipe') }})
Postbote
get--http://localhost:3001/createrecipe/1
<body> <pre>Cannot GET /createrecipe/1</pre> </body>
Sie müssen die Details des einzelnen Artikels auf der Detailseite und beim Postboten überprüfen.
在
app.use("/recipes",recipesRouter)
中,您正在为recipesRouter
中的所有路由添加/recipes
前缀,但您正在调用http://localhost:3001/createrecipe/1
而不是http://localhost:3001/recipes/createrecipe/1