Docs Home → MongoDB Manual Show
This tutorial walks you through inserting test data into a MongoDB database and querying that data using the documentation's embedded web shell. You do not need to deploy or install MongoDB to complete this tutorial. The examples in this tutorial use a subset of the Sample Mflix Dataset, which is part of the sample data included in MongoDB's cloud-hosted service, MongoDB Atlas. Atlas requires no installation overhead and offers a free tier to get started. After completing this tutorial, you can use Atlas to explore additional sample data or host your own data. Click inside the shell to connect. Once connected, you can run the examples in the shell above. To set up your own deployment:
For additional examples, including MongoDB driver specific examples (Python, Java, Node.js, etc.), see: Tabel CRUDKita buat sebuah tabel untuk menjelaskan detail operasi CRUD yang ada di REST API:
Project SetupStep by step
Struktur folder:
Buat sebuah file bernama server.js di dalam folder api dan salin code berikut:
Pada code di atas kita membuat sebuah aplikasi express yang aktif di port 3001. Perlu diingat bahwa front end dari dinotes menggunakan port 3000, oleh karena itu kita gunakan port lain selain port 3000, tidak harus 3001. Untuk menjalankan aplikasi express di atas eksekusi perintah DevelopmentUntuk melihat hasil dari setiap perubahan yang kita buat pada aplikasi express kita harus me-restart aplikasi secara manual. Hal ini sedikit merepotkan. Kita bisa gunakan package bernama nodemon untuk membantu kita me-restart aplikasi secara otomatis setiap kali ada perubahan. Tambahkan package nodemon ke dalam project.
Dengan perintah di atas package nodemon akan ditambahkan secara global, sehingga nodemon akan tersedia di system path dan kita bisa
memanggilnya di terminal. Perintah ini sama dengan Selanjutnya untuk menjalankan aplikasi express kita bisa gunakan perintah:
Atau kamu bisa navigasi ke folder api kemudian eksekusi perintah Untuk permulaan setiap HTTP method yang dipanggil hanya akan menampilkan sebuah pesan bukan data. Contoh: request GET yang diterima server akan direspon dengan pesan Received a GET request. POST
Sekarang kita tambahkan sebuah route untuk menghandle POST request yang diarahkan ke url
Untuk menguji route yang sudah dibuat, kita bisa menggunakan sebuah aplikasi sederhana bernama curl, yang umumnya sudah terinstall pada Operating System. curl adalah command-line tool yang digunakan untuk mengirim data via URL dan support puluhan protokol termasuk protokol HTTP. Jika kamu menggunakan windows mungkin kamu harus menginstallnya secara manual. Kamu bisa download di sini. Buka terminal dan jalankan perintah berikut ini:
Hasilnya:
Selanjutnya kita tambahkan route method yang lain: GET
PUT
DELETE
Code server.js:
Output yang didapatkan menggunakan curl:
Meskipun curl dapat digunakan untuk menguji REST API, curl memiliki beberapa keterbatasan. Salah satunya adalah menguji metode POST dengan data berjumlah banyak dan bersifat kompleks menggunakan curl bukanlah sesuatu yang mudah. Oleh karena itu kita akan menggunakan API testing tools. Salah satu API testing tool yang sering digunakan oleh developer adalah Postman. Testing menggunakan PostmanPostman adalah salah satu tool yang banyak digunakan developer dalam mengembangkan sebuah API. Dengan postman kita bisa membuat, menguji dan memodifikasi API dengan mudah. Pada bagian ini kita akan menggunakan Postman untuk menguji API yang sudah kita buat. InstallDownload Postman disini kemudian install. Tampilan Postman setelah install (bisa berbeda tergantung versi).
PenggunaanMenggunakan postman untuk test REST API: Step by step
Klik tombol New -> Pilih Collection -> Beri nama collection dinotes-api (atau pilih nama sesuai keinginan) -> Klik Create Atau kamu bisa pilih menu Create Collection dari Launchpad
Klik tombol New -> Pilih Request -> Beri nama request get notes -> Simpan di collection dinotes-api -> Klik Create Jenis request yang kita buat adalah GET, pastikan memilih GET pada menu drop down yang tersedia.
Hasilnya
Kita bisa ulangi langkah di atas untuk menguji url endpoint dengan HTTP method yang lain (POST, PUT, DELETE). Postman menyediakan banyak opsi yang bisa digunakan untuk mempermudah kita melakukan testing API, seperti menambahkan Query Params, Authorization, Headers atau Body pada sebuah request. Koneksi DatabaseSaatnya menambahkan database untuk mengelola data yang ditransfer via API. Database yang kita gunakan adalah NoSQL database MongoDB. Persiapan
Buat Database & CollectionKita perlu membuat sebuah Database dan satu Collection untuk menyimpan data yang dikirim ke server via API. Kita bisa memanfaatkan MongoDB compass untuk membuatnya dengan mudah. Step by step
MongoDB compass akan menyediakan informasi koneksi ke MongoDB yang sudah terinstall di komputer/localhost, sehingga kita tinggal klik button CONNECT
Hasilnya:
Membuat KoneksiUntuk dapat menggunakan MongoDB di Node.js kita butuh menambahkan package MongoDB driver. Step by step
Update code api/server.js
Penjelasan:
Jika muncul pesan Connected successfully to server pada console maka server sudah berhasil connect ke MongoDB. Menambahkan Route HandlerSelanjutnya kita akan membuat handler untuk masing-masing route. Agar server dapat mengakses data yang ada di dalam body sebuah request kita perlu menambahkan middleware body-parser. Step by step
Create
Penjelasan Ketika sebuah POST request diterima oleh server, handler akan membuat koneksi ke MongoDB kemudian data yang ada di dalam req.body akan dimasukan ke dalam collection. TestingMari kita lakukan testing menggunakan Postman.
Jika berhasil dan tidak ada error hasilnya akan seperti ini:
Kita akan lanjutkan untuk menambah handler untuk route yang lain. Tambahkan lebih banyak data ke dalam colection. Kita bisa gunakan Mock Data Generator seperti Mockaroo untuk mendapatkan sample data yang akan ditambahkan ke collection lewat MongoDB Compass.
ReadUpdate /api/server.js dengan code berikut untuk menghandle GET request
Mencari semua notes dilakukan dengan menggunakan metode Oleh karena itu kita perlu menggunakan method
Gunakan req.params untuk mendapatkan parameter yang ada di url. UpdateUpdate /api/server.js dengan code berikut untuk menghandle PUT request
Selain method Letak perbedaannya ada pada output yang dihasilkan(return). DeleteUpdate /api/server.js dengan code berikut untuk menghandle DELETE request
Final Code
Tapi sekarang code menjadi sangat panjang. Waktunya Refactoring... Apa isi dari sebuah Collection dalam MongoDB?Collection MongoDb adalah tempat kumpulan informasi data yang berbentuk dokumen. Collection dipadankan seperti tabel-tabel yang berisi data pada database SQL. Document MongoDb adalah satuan unit terkecil dalam MongoDB.
Apakah MongoDB gratis?MongoDB adalah software sistem database yang bisa Anda gunakan gratis, baik untuk pengguna Windows, Linux atau macOS. Ini tentu pilihan yang cocok apabila Anda sedang mengerjakan project kecil atau pribadi dan tidak menyediakan anggaran khusus untuk membeli lisensi.
Apa itu MongoDB atlas?Atlas MongoDB adalah database cloud pertama yang memungkinkan pelanggan menjalankan aplikasi secara bersamaan di penyedia cloud utama. Dengan menggunakan cluster multi-cloud, pelanggan dapat dengan mudah memanfaatkan kapabilitas unik dan jangkauan penyedia cloud yang berbeda.
Jelaskan langkah langkah dalam instalasi MongoDB?How To Install MongoDB on Windows Step by Step. Download mongodb di link berikut.. Setelah berhasil download buka dan install mongodb.. Klik Next.. Centang I accept -> Next.. Pilih Custom jika ingin menempatkan file installasi di partisi lain.. Klik Next.. Instlal mongodb sebagai service.. Hilangkan centang pada Compass -> Next.. |