← Back to Node.js Course | Chapter 8: Working with APIs | Lesson 2 of 7

GET/POST/PUT/DELETE का उपयोग

हर HTTP method आपके data के लिए एक create, read, update, या delete action में map होता है।

In this page:

  1. GET/POST/PUT/DELETE
Syntax
javascript
app.get('/resources', (req, res) => res.json(items));
app.post('/resources', (req, res) => { /* create */ });
app.put('/resources/:id', (req, res) => { /* replace */ });
app.delete('/resources/:id', (req, res) => { /* remove */ });

GET/POST/PUT/DELETE

Handlers implement करें जो एक in-memory या database store पढ़ें या बदलें। GET 200 return करता है, POST नए item के साथ 201 return करता है, PUT replace करता है, और DELETE 204 return करता है। Input validate करें और एक id exist न करने पर 404 return करें।

Note: POST से created resource और एक Location header return करें।

उदाहरण: GET/POST/PUT/DELETE

javascript
const http = require("http");
let nextId = 1; const db = new Map();
const server = http.createServer((req, res) => {
  const id = Number(req.url.split("/")[2]);
  let body = ""; req.on("data", (c) => (body += c));
  req.on("end", () => {
    const send = (s, d) => { res.writeHead(s, { "Content-Type": "application/json" }); res.end(d === undefined ? "" : JSON.stringify(d)); };
    if (req.method === "POST") { const item = { id: nextId++, ...JSON.parse(body) }; db.set(item.id, item); return send(201, item); }
    if (req.method === "GET") return db.has(id) ? send(200, db.get(id)) : send(404, { error: "not found" });
    if (req.method === "PUT") { db.set(id, { id, ...JSON.parse(body) }); return send(200, db.get(id)); }
    if (req.method === "DELETE") { db.delete(id); return send(204); }
  });
});
server.listen(0, async () => {
  const base = "http://localhost:" + server.address().port + "/items";
  const post = await fetch(base, { method: "POST", body: JSON.stringify({ name: "pen" }) });
  console.log(post.status, await post.json());
  console.log((await fetch(base + "/1")).status);
  console.log((await fetch(base + "/1", { method: "DELETE" })).status);
  console.log((await fetch(base + "/1")).status);
  server.close();
});

// Output:
// 201 { id: 1, name: 'pen' }
// 200
// 204
// 404

⚠️ Run this in your own terminal or Node.js environment.

Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. created items के लिए 200 return करना
  2. input validate न करना
  3. missing ids के लिए 404 भूल जाना
चैप्टर सारांश
  • GET 200 देता है, POST 201 देता है
  • PUT replace करता है, DELETE 204
  • Input validate करें
  • Unknown ids के लिए 404 return करें
🔒

Chapter Quiz — Complete all 7 topics to unlock

0/7 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.