Asia/Jakarta
BlogAugust 2, 2026

HTTP Method

Muhammad Abdul Karim
HTTP Method
HTTP method menentukan aksi apa yang ingin dilakukan client terhadap sebuah resource. Dua sifat penting yang membedakan satu method dengan method lainnya:
  • Aman (Safe) — method tidak mengubah state apa pun di server; boleh dipanggil berkali-kali tanpa efek samping karena sifatnya murni membaca.
  • Idempoten — memanggil method yang sama berulang kali dengan input yang sama menghasilkan efek akhir yang sama seperti memanggilnya sekali (meski isi response-nya bisa berbeda tiap kali).
Kedua sifat ini didefinisikan oleh RFC 9110 dan jadi acuan pada tabel-tabel di bawah.
Method
Deskripsi
Body Request
Aman
Idempoten
GETMengambil representasi resource dari server tanpa mengubah state apa pun.Tidak (secara konvensi diabaikan meski secara teknis diizinkan)YaYa
POSTMengirim data ke server untuk membuat resource baru atau memicu suatu proses; efeknya ditentukan sepenuhnya oleh server.YaTidakTidak
PUTMengganti seluruh representasi resource pada URI tertentu dengan data yang dikirim; kalau resource belum ada, sebagian server akan membuatnya.YaTidakYa
PATCHMenerapkan modifikasi parsial pada resource — cukup mengirim bagian yang berubah, bukan representasi lengkap.YaTidakTergantung implementasi (umumnya tidak dijamin)
DELETEMenghapus resource yang ditunjuk oleh URI.Opsional (jarang dipakai)TidakYa
QUERYMethod baru untuk menjalankan query kompleks lewat body request seperti POST, tapi tetap aman dan cacheable seperti GET. Lihat penjelasan di bawah.YaYaYa
QUERY adalah method yang sedang diusulkan di IETF HTTP Working Group untuk mengisi celah antara GET dan POST. Query yang kompleks — filter bertingkat, full-text search dengan banyak parameter — sering kali terlalu panjang untuk dimuat di query string milik GET (yang juga punya batas panjang URL di banyak server/browser). Solusi umum selama ini adalah memakai POST, tapi konsekuensinya method tersebut kehilangan sifat aman dan tidak bisa di-cache seperti GET. QUERY mengirim kriteria pencarian lewat body request seperti POST, namun tetap didefinisikan sebagai method yang aman dan idempoten seperti GET, sehingga response-nya tetap bisa di-cache oleh browser maupun proxy. Karena masih berstatus draft di IETF, dukungan di browser, framework server, dan library HTTP client saat ini masih terbatas dan bisa berubah sebelum menjadi standar resmi.
Method
Deskripsi
Aman
Idempoten
HEADSama seperti GET, tapi server hanya mengembalikan header response tanpa body — dipakai untuk mengecek metadata resource (ukuran, tanggal modifikasi) tanpa mengunduh isinya.YaYa
OPTIONSMenanyakan ke server method apa saja yang didukung suatu endpoint. Browser juga memakainya secara otomatis untuk CORS preflight request.YaYa
CONNECTMeminta server (biasanya proxy) membuka tunnel TCP mentah ke tujuan tertentu — dipakai HTTPS untuk menembus proxy lewat SSL/TLS.TidakTidak
TRACEMeminta server mengembalikan persis apa yang diterimanya, dipakai untuk debugging. Banyak server menonaktifkannya karena berisiko terhadap serangan Cross-Site Tracing (XST).YaYa
Selain method di atas, beberapa protokol ekstensi HTTP juga mendefinisikan method sendiri untuk kebutuhan spesifik — misalnya WebDAV menambahkan PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, dan UNLOCK untuk operasi manajemen file lewat HTTP. Method-method ini jarang muncul di luar konteksnya masing-masing, tapi bagus untuk diketahui bahwa daftar method HTTP tidak berhenti di sepuluh yang dibahas di atas. Memilih method yang tepat — dan memahami sifat aman/idempoten-nya — penting saat mendesain REST API: client (dan proxy/cache di antaranya) boleh mengasumsikan method yang aman tidak punya efek samping, serta boleh mengulang method yang idempoten dengan aman saat request gagal atau timeout tanpa takut menduplikasi efeknya.
Share this post:
Search
CategoriesProgramming