Pada tutorial kali ini kita akan membuat sebuah aplikasi CRUD (Create, Read, Update, Delete) REST API sederhana menggunakan express dan firebase.
Persiapan
Sebelum kita memulai, ada beberapa hal yg perlu dipersiapkan,
Membuat project
Pertama-tama kita perlu membuat folder terlebih dahulu, disini saya akan membuat folder dengan nama crud-firebase, tetapi kalian bisa memberi nama folder sesuai keinginan kalian.
Setelah kita masuk ke dalam direktori kita, jalankan perintah berikut
Kita akan diberikan sebuah file package.json
.
Struktur project
Kita akan membuat beberapa file & folder kita sehingga struktur project kita akan tampil seperti berikut:
Install dependencies
Selanjutnya kita akan menginstall beberapa dependencies.
dev dependencies
Modules
di package.json tambahkan kode berikut:
Sip!, 😄 kita sekarang dapat menggunakan sintaks seperti import
untuk mengimport dependencies ke project kita
Setup Firebase Firestore
-
Membuat Firebase Project
- Masuk ke firebase console dan buat project baru,
- setelah project berhasil dibuat, aktifkan Firestore dan buat database baru.
-
Salin Konfigurasi Firebase
- Masuk ke Project Overview > Project Settings > General.
- Scroll kebawah, pada bagian SDK setup and configuration. lalu Salin konfigurasi firebaseConfig yang telah disediakan.
Setup File Konfigurasi
.env
Isi konfigurasi dengan firebase config yang telah digenerate pada firebase console anda.
firebase/config.js
Kamu bisa salin kode berikut ke firebase/config.js.
firebase/index.js
Tambahkan kode berikut di file firebase/index.js untuk menginisialisasi firebase
app.js
Tambahkan kode berikut di app.js
Untuk menyalakan server kita dapat menjalankan perintah berikut
atau kita dapat menggunakan nodemon
Saat mengembangkan aplikasi Node.js, kamu harus merestart server biar setiap kali ada perubahan yang kita buat. Nodemon dapat membantu kita memantau perubahan dan merestart servernya secara otomatis.
Kita dapat juga menambahkannya di package.json agar dapat kita jalankan dengan perintah npm run dev
atau npm run start
.
Membuat CRUD
Selanjutnya kita akan membuat route api serta operasi CRUD (Create, Read, Update, Delete).
Didalam folder controller kita akan membuat sebuah file baru, saya akan buat dengan nama bookController.js
Controller
Route
Didalam folder route, buat file dengan nama bookRoute.js dan salin kode berikut
penjelasan masing-masing route:
Method | Route | Description |
---|---|---|
GET | /books | Mengambil semua buku. |
POST | /book/new | Membuat buku baru. |
GET | /book/:id | Mengambil detail buku. |
PUT | /book/update/:id | Mengupdate buku. |
DELETE | /book/delete/:id | Menghapus buku. |
App
Agar kita mendapatkan akses yg telah kita buat di folder route, kita perlu melakukan perubahan didalam file app.js seperti berikut
Jalankan Server
Di terminal jalankan perintah
sekarang API kamu sudah dapat diakses di halaman localhost:4000/api
Testing API dengan Postman
Selanjutnya yaitu mengetes API kita menggunakan Postman, disini kita akan mengecek apakah semua operasi CRUD kita sudah berjalan dengan benar.
Create (POST)
EndPoint: localhost:4000/api/book/new.
Read (GET)
Type | Endpoint |
---|---|
Get All Items | localhost:4000/api/books |
Get Single Item | localhost:4000/api/book/[id] |
Update (PUT)
EndPoint: localhost:4000/api/book/udpate/[id].
Delete (DELETE)
EndPoint: localhost:4000/api/book/delete/[id].
Kesimpulan
Selamat, saat ini seharusnya kamu sudah dapat membuat server node js dengan firebase. Kita telah membahas setup, konfigurasi serta melakukan testing api menggunakan postman. 😄