Latihan 1: API Caching — API

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

Isi function handleRequest(article, ifNoneMatch) yang meniru handler ETag:

  1. Hitung etag dari versi artikel: "v" + article.version (jadi version: 3 menjadi v3).
  2. Kalau ifNoneMatch === etag, kembalikan { status: 304, body: null, etag }: client sudah punya versi terbaru.
  3. Selain itu (termasuk ifNoneMatch bernilai null), kembalikan { status: 200, body: article, etag }.

Artikel { id: 1, title: 'Halo', version: 3 } dan enam baris console.log di starter tetap seperti itu. Output-nya harus persis, satu per baris: 200, v3, Halo, 304, null, 200. Tester juga memanggil handleRequest({ version: 9 }, "v9") dan mengharapkan status 304, body null, dan etag v9, jadi etag harus dihitung dari versinya, bukan ditulis "v3".

Di HTTP sungguhan nilai ETag ditulis dengan tanda kutip (ETag: "v3"); latihan ini memakai string v3 saja.

Hint