🛣️
Routing

Basic Routing

app.get, post, put, delete
💡 Routes EK HOTEL RECEPTION ke DIRECTORY BOARD jaise hain — "Room 101 → left", "Gym → basement". URL + HTTP method milkar batate hain ki request KIS handler ke paas jaani chahiye.

EK route DO cheezon se define hota hai: HTTP METHOD (GET, POST, PUT, PATCH, DELETE) aur PATH ("/users"). Express dono ko match karta hai — same path par alag method ka alag handler ho sakta hai.

app.all() har method ko match karta hai aur app.route("/path") EK hi path par multiple methods chain karne deta hai, jisse repetition kam hoti hai.

app.get("/users", listUsers);
app.post("/users", createUser);

app.route("/users/:id")
   .get(getUser)
   .put(updateUser)
   .delete(deleteUser);
🛣️
Routes EK HOTEL RECEPTION ke DIRECTORY BOARD jaise hain — "Room 101 → left", "Gym → basement". URL + HTTP method milkar batate hain ki request KIS handler ke paas jaani chahiye.
1 / 2
⚡ झट से Recap
  • Route = HTTP method + path ka combination
  • Same path par alag methods ke alag handlers ho sakte hain
  • app.route() se ek path par multiple methods chain karke duplication hatao
इस page में (2 subtopics)

Express har incoming request ke METHOD aur PATH ko registered routes se match karta hai. Same path par alag method ke alag handler ho sakte hain — "GET /users" list deta hai aur "POST /users" naya user banata hai. Agar path match ho lekin method na ho, to Express 404 deta hai (405 nahi).

app.get("/users", list);
app.post("/users", create);
app.all("/users", (req, res) => res.sendStatus(405)); // baaki methods

Ek route par kai handlers array ya arguments ki tarah diye ja sakte hain — wo middleware ki tarah order mein chalte hain. app.route() same path par methods chain karke duplication hataata hai, jo CRUD resources ke liye bahut saaf dikhta hai.

app.route("/books/:id")
  .all(loadBook)                 // teenon ke liye common
  .get((req, res) => res.json(req.book))
  .put(updateBook)
  .delete(deleteBook);