Permintaan POST, PUT, DELETE dan Pengiriman Data

Dua ponsel dengan antarmuka aplikasi

Tujuan Pembelajaran

  • Mengirim data ke server dengan POST.
  • Mengubah data dengan PUT.
  • Menghapus data dengan DELETE.
  • Membangun form yang mengirim data ke API.

Uraian Materi

Setelah mampu mengambil data, aplikasi perlu mengirim data: menambah record baru (POST), memperbarui (PUT), dan menghapus (DELETE). Ketiganya membutuhkan body permintaan dan pada umumnya kepala Content-Type application/json.

Mengirim dengan POST

Dart
final res = await http.post(
  uri,
  headers: {'Content-Type': 'application/json'},
  body: jsonEncode({'nama': 'Produk A', 'harga': 15000}),
);

Server menerima data, memproses, dan membalas status serta nilai yang tersimpan. Aplikasi membaca respons untuk memberi umpan balik kepada pengguna.

PUT untuk Perbaruan

PUT umumnya memerlukan identitas record di dalam URL atau body, misalnya pada path /produk/5. Data lengkap dikirim lalu nilai diperbarui.

Dart
final res = await http.put(
  Uri.parse('https://api.example.com/produk/5'),
  headers: {'Content-Type': 'application/json'},
  body: jsonEncode({'nama': 'Produk A Baru', 'harga': 20000}),
);

DELETE untuk Penghapusan

DELETE mengarah ke resource spesifik tanpa body: http.delete(Uri.parse('.../produk/5')). Sebagian server mengharuskan otorisasi – ditambahkan lewat header Authorization yang dibahas sekilas.

Menghubungkan Form dengan API

Pertemuan menggabungkan form (hasil praktik modul form) dengan fungsi API: tombol Kirim pada form memanggil POST, edit memanggil PUT, dan tombol hapus memanggil DELETE. Setelah sukses, daftar dimuat ulang agar selalu sinkron dengan server.

Body dan Content-Type pada Permintaan Kirim

Permintaan POST dan PUT membawa body berisi data dalam format JSON, dengan header Content-Type menandakan jenis konten yang dikirim. Server membaca body ini untuk memproses data. Memahami kedua bagian tersebut menjelaskan mengapa server dapat menerima data dengan benar.

Membedakan POST dan PUT

Secara umum POST menambahkan sumber daya baru, sementara PUT memperbarui sumber daya yang sudah ada dengan identitas yang jelas. Perbedaan ini memengaruhi cara URL dan body disusun, sekaligus menjadi konsep yang sering ditanyakan pada tes pemahaman protokol.

Menyinkronkan Antarmuka dengan Server

Setelah sukses melakukan operasi kirim, antarmuka perlu dimutakhirkan, biasanya dengan memuat ulang daftar dari server. Pola ini menjaga konsistensi antara apa yang dilihat pengguna dengan keadaan sebenarnya di server tanpa perlu me-restart aplikasi.

Menangani Kegagalan Server

Tidak setiap permintaan berhasil; pengguna butuh informasi yang jelas saat gagal, misalnya koneksi bermasalah atau data tidak diterima. Peserta menangkap kesalahan dan menampilkan pesan yang mudah dipahami, menghindari error teknis yang membingungkan.

Aktivitas Pembelajaran

  • Menulis fungsi POST, PUT, dan DELETE.
  • Menghubungkan form ke fungsi API.
  • Menguji alur tambah, ubah, dan hapus.
  • Menangani respon sukses dan gagal.

Tugas dan Latihan

  • Bangun form tambah dan edit produk ke API latihan.
  • Implementasikan hapus dengan konfirmasi dialog.
  • Tunjukkan pesan umpan balik dari setiap permintaan.

Evaluasi

Evaluasi dilakukan melalui pengamatan hasil praktikum, kuis singkat di akhir pertemuan, dan pemantauan proyek. Peserta yang belum mencapai indikator tertentu diberikan remedial melalui bimbingan ulang dan latihan tambahan pada pertemuan berikutnya.

Panduan umum praktik, catatan belajar, dan refleksi tersedia di Panduan Belajar Kribbi Study.

No Comment! Be the first one.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *