Lompat ke konten utama

Kompetisi Ajak Teman: hadiah total Rp1.000.000 tunai untuk 3 pengajak terbanyak. Berakhir 29 November 2026. Ikut kompetisi

←

HTTP dan API Web

Pelajaran 9 dari 16

Badan JSON dan REST

Badan pesan dan JSON

Setelah pelajaran ini kamu bisa memutuskan kapan badan respons diurai sebagai JSON dan menyiapkan permintaan yang mengirim JSON.

±13 menitDiperiksa 28 Sep 2026

Materi

Badan pesan adalah isi sesudah baris kosong. API web umumnya mengirim JSON, format teks yang aturannya ditetapkan RFC 8259 dan yang cara membaca serta menulisnya sudah dibahas di kelas JavaScript Lanjutan lewat JSON.parse dan JSON.stringify. Yang baru di sini adalah kapan badan itu ada dan bagaimana klien tahu isinya JSON.

Tidak semua respons membawa badan. 204 No Content berarti berhasil tanpa isi tambahan (RFC 9110 §15.3.5), dan 304 Not Modified juga tanpa isi. JSON.parse pada teks kosong menghentikan program dengan SyntaxError, dan response.json() di fetch gagal dengan cara yang sama. Karena itu klien memeriksa kode status dan jenis media Content-Type sebelum mengurai; respons galat dari server perantara bisa saja berupa halaman HTML.

const kiriman = {
  method: "POST",
  headers: { "content-type": "application/json", accept: "application/json" },
  body: JSON.stringify({ resep: 14, bintang: 5 }),
};
// Badan respons 201 berisi teks, bukan objek:
// '{"id":88,"resep":14,"bintang":5}'

Saat mengirim, data diubah dengan JSON.stringify dan header Content-Type: application/json dipasang. RFC 8259 mewajibkan teks JSON yang dipertukarkan antarsistem memakai UTF-8. Bagian §6 spesifikasi itu mencatat bahwa bilangan bulat di luar rentang ±(2^53 − 1) tidak dijamin terbaca sama oleh semua program; JavaScript membaca angka JSON sebagai Number, sehingga ID yang lebih besar dari itu bisa berubah tanpa pesan.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 3 dari 3

Server menjawab DELETE /keranjang/3 dengan 204 No Content dan badan kosong, lalu kode klien menjalankan JSON.parse(body). Apa yang terjadi?

Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke