← Artikel

HTTP FIELD GUIDE

Metode HTTP dan idempotensi

Pahami arti metode HTTP dan kapan permintaan aman diulang.

Apa arti metode?

Metode menyatakan tindakan yang dimaksud. GET mengambil representasi sumber daya, HEAD hanya metadatanya. POST mengirim data untuk diproses, PUT mengganti sumber daya, dan DELETE meminta penghapusan. Server dapat menolak metode untuk suatu sumber daya dengan status 405.

Aman dan idempoten

Metode aman dimaksudkan hanya untuk membaca. Metode idempoten memberi efek yang sama pada server saat diulang. GET dan HEAD memiliki kedua sifat itu. PUT dan DELETE idempoten menurut definisi, walau responsnya bisa berbeda. POST umumnya tidak idempoten.

Mengapa perlu diperhatikan?

Timeout tidak membuktikan server belum memproses permintaan. Mengulang POST bisa membuat dua pesanan. Untuk penulisan yang dapat diulang, gunakan kunci idempotensi yang didukung API atau periksa status sumber daya lebih dahulu. Nama metode saja tidak menjamin implementasi server benar.

Referensi