Latihan 1: Desain API yang Baik — API

Latihan 1 dari materi Desain API yang Baik di API — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Buat tiga endpoint untuk resource articles dengan desain yang konsisten. Array articles di starter tetap dipakai.

  1. GET /articles menjawab { data: articles } (status 200).
  2. GET /articles/:id mencari artikelnya dengan Number(req.params.id) dan find. Kalau ketemu, jawab { data: article }; kalau gak, jawab res.status(404).json({ error: "Article not found" }).
  3. POST /articles membuat artikel dari req.body (title dan body) dengan id baru (misalnya dari let nextArticleId = 2;), push ke articles, lalu menjawab res.status(201).json({ data: article, message: "Article created" }).

Path-nya kata benda jamak tanpa kata kerja: /articles, bukan /getArticles.

Tester-nya mengecek: GET /articles menjawab 200, GET /articles/1 menjawab 200, GET /articles/999 menjawab 404, POST /articles menjawab 201, dan kodemu memuat req.params, req.body, find (atau filter/findIndex) dan push. Kodemu juga dibaca: ketiga jawaban sukses dibungkus { data: ... }, dan jawaban POST membawa message: "Article created".

Hint