typecode
JavaScriptExpress Server/server.js
1const express = require("express");
2const app = express();
3
4app.use(express.json());
5
6const tasks = new Map();
7let nextId = 1;
8
9app.get("/api/tasks", (req, res) => {
10 const items = [...tasks.values()];
11 res.json({ data: items, count: items.length });
12});
13
14app.post("/api/tasks", async (req, res) => {
15 try {
16 const { title, priority = "medium" } = req.body;
17 if (!title) {
18 return res.status(400).json({ error: "Title is required" });
19 }
20 const task = { id: nextId++, title, priority, done: false };
21 tasks.set(task.id, task);
22 res.status(201).json(task);
23 } catch (err) {
24 console.error(`Failed to create task: ${err.message}`);
25 res.status(500).json({ error: "Internal server error" });
26 }
27});
28
29app.delete("/api/tasks/:id", (req, res) => {
30 const id = parseInt(req.params.id, 10);
31 const deleted = tasks.delete(id);
32 res.json({ success: deleted });
33});
34
35app.listen(3000, () => {
36 console.log("Server running on port 3000");
37});
0WPM
100%Accuracy
00:00Time
0%
Progress