HTTP Methods & Status Codes — Web Fundamentals

HTTP Methods menentukan jenis operasi yang ingin dilakukan client terhadap resource di server. Masing-masing method punya semantik yang jelas. Methods utama…

Tiap request (pesan dari browser ke server) membawa method: kata kerja yang bilang mau ngapain, misalnya ambil atau hapus data. Tiap response (balasan server) membawa status code: angka tiga digit yang bilang hasilnya, misalnya berhasil atau gak ketemu.

🧪 Tebakan cepat: tombol "Beli" yang mengirim POST gak sengaja kamu klik dua kali. Berapa pesanan yang dibuat? Tebak dulu, jawabannya ada di bagian "Aman diulang atau gak".

Method di request, status code di response

Browser minta server bikin user baru, lalu server menjawab:

POST /api/users HTTP/1.1
Content-Type: application/json

{"nama": "Budi"}
HTTP/1.1 201 Created
Location: /api/users/3

Lima method yang paling sering

Method Artinya Contoh
GET ambil data lihat daftar produk
POST bikin data baru daftar akun
PUT ganti seluruh data simpan ulang seluruh profil
PATCH ubah sebagian data ganti nama saja
DELETE hapus data hapus postingan

PUT mengirim data lengkap dan menggantikan semuanya, jadi field yang gak dikirim ikut hilang. PATCH cuma mengirim field yang berubah, sisanya tetap.

Aman diulang atau gak

Idempotent artinya: request yang sama dikirim sekali atau sepuluh kali, hasil akhirnya di server sama.

Status code: lima kelompok

Digit pertama menunjukkan kelompoknya: 1xx info, 2xx sukses, 3xx redirect (datanya ada di alamat lain), 4xx client error (permintaannya yang salah), 5xx server error (server-nya yang bermasalah).

Teks di belakang angka itu baku. Latihan memakainya persis, termasuk huruf besarnya: Not Found, bukan not found.

Dari angka ke kelompok, pakai JavaScript

const status = 404

let kelompok = "unknown"
if (status >= 200 && status < 300) kelompok = "success"
else if (status >= 400 && status < 500) kelompok = "client-error"

const ARTI = { 200: "OK", 404: "Not Found" }
const arti = ARTI[status] || "Unknown"

console.log(kelompok + ":" + arti) // client-error:Not Found

⚠️ Jebakan yang sering ketemu

💡 Dua method lain. HEAD sama kayak GET tapi tanpa body, buat ngecek header saja. OPTIONS menanyakan apa yang boleh dilakukan, dan browser memakainya untuk preflight CORS.

TL;DR: Method bilang mau apa: GET ambil, POST bikin, PUT ganti semua, PATCH ubah sebagian, DELETE hapus. GET, PUT, dan DELETE idempotent, POST gak. Status code bilang hasilnya, dikelompokkan dari digit pertama: 1xx info, 2xx sukses, 3xx redirect, 4xx salah di client, 5xx salah di server.

Yang akan kamu pelajari