Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja
Skodev
Belajar coding dalam bahasa Indonesia
Daftar Isi:
Menambahkan sorting pada API Node.js bisa membuat pengiriman data ke pengguna lebih fleksibel dan berguna. Berikut cara menambah sorting dengan langkah-langkah yang mudah dipahami.
Sorting membuat data lebih terstruktur dan mudah dibaca. Melalui sorting, kamu bisa mengatur data berdasarkan berbagai kategori, seperti tanggal
, nama
, atau harga
. Ini sangat membantu ketika kamu punya database dengan banyak data.
Pastikan kamu sudah menyiapkan database yang relevan. Proses sorting biasanya diimplementasikan dalam query ke database. Berikut ini adalah contoh sederhana dengan MongoDB:
const items = await collection.find().sort({ key: 1 }).toArray();
Angka 1
menandakan urutan menaik, sedangkan -1
untuk urutan menurun.
Agar pengguna dapat menentukan cara sorting, kamu perlu menyediakan parameter dalam query. Misalnya, untuk sorting by key
:
app.get('/items', async (req, res) => {
const sortKey = req.query.sortBy || 'defaultKey';
const sortOrder = req.query.order === 'desc' ? -1 : 1;
const items = await collection.find().sort({ [sortKey]: sortOrder }).toArray();
res.json(items);
});
Sebaiknya kamu tentukan sorting default agar jika pengguna tidak memberikan parameter, data tetap diurutkan dengan benar.
const sortKey = req.query.sortBy || 'name'; // name sebagai default
Setelah menambahkan sorting, lakukan testing untuk memastikan semuanya berjalan lancar. Gunakan tools seperti Postman untuk mengirimkan request API dan melihat hasil sorting.
Pastikan kamu menangani beberapa kemungkinan error, seperti:
Kamu bisa menambahkan handling jika terjadi error dalam proses sorting:
try {
// sorting operation
} catch (error) {
res.status(500).send('Terjadi kesalahan pada server');
}
Dengan menambahkan sorting pada API, aplikasi kamu akan lebih berguna dan dinamis. Gunakan panduan ini untuk memulai menambahkan fitur ini ke dalam proyek Node.js yang sedang kamu kerjakan. Selamat mencoba!
Link terkait: