𝗥𝗙𝗖 𝟭𝟬𝟬𝟬𝟴: 𝗞𝗮𝗲𝗱𝗮𝗵 𝗛𝗧𝗧𝗣 𝗤𝗨𝗘𝗥𝗬 𝗕𝗮𝗵𝗮𝗿𝘂
Pembangun menghadapi masalah apabila mengambil data yang kompleks. Anda mahu menggunakan GET, tetapi ia mempunyai had. Anda mahu menggunakan POST, tetapi ia bukan alat yang sesuai untuk tugas tersebut. RFC 10008 mencadangkan penyelesaian baharu: kaedah QUERY.
Cabaran semasa dengan GET:
- Had URL: Pelayar dan pelayan mengehadkan panjang URL. Penapis yang besar akan merosakkan permintaan anda.
- Struktur yang tidak teratur: GET menggunakan pasangan kunci-nilai yang ringkas. Menghantar objek JSON bersarang adalah sukar.
- Risiko privasi: Parameter pertanyaan muncul dalam log pelayan dan sejarah pelayar.
Cabaran semasa dengan POST:
- Semantik yang salah: POST memberitahu pelayan bahawa anda ingin mencipta atau mengubah data.
- Isu caching: Kebanyakan sistem tidak menyimpan cache permintaan POST. Ini melambatkan aplikasi anda.
Kaedah QUERY mengubah perkara ini. Ia membolehkan anda menghantar badan permintaan (request body) untuk pengambilan data. Ia memastikan API anda kekal bersih dan mematuhi peraturan yang betul.
Kelebihan kaedah QUERY:
- Gunakan badan yang kompleks: Anda boleh menghantar objek JSON yang lengkap untuk penapis carian.
- Kekal selamat: Ia tidak mengubah keadaan (state) pelayan.
- Tingkatkan kelajuan: Ia membolehkan caching yang cekap seperti kaedah GET.
Berhenti memaksa POST melakukan tugas GET. Kaedah QUERY menyediakan cara untuk mengambil data yang kaya tanpa melanggar piawaian HTTP.
Sumber: https://dev.to/kelvin_kariuki_20f4bec616/developer-take-on-rfc-10008-the-new-http-query-method-25fo