Initekno.com – Expressjs adalah framework nodejs yang mempunyai performa cepat dan menjanjikan, cocok untuk digunakan sebagai backend service. Kali ini expressjs saya gunakan untuk membuat sebuah RestAPI untuk kebutuhan project sederhana. Dengan Expressjs kamu bisa mengkolaborasikannya dengan berbagai macam Database modern maupun classic yang ada saat ini.
Untuk project ini saya menggunakan database mysql. Untuk keterangan projectnya cukup simple disini saya akan membuat project RestApi dengan nama siaptaaruf. dalam taaruf nanti akan ada database db_siaptaaruf kemudian terdapat satu tabel yaitu tabel peserta. Untuk deskripsi tabelnya seperti berikut ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
+----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+----------------+ | idp | int(11) | NO | PRI | NULL | auto_increment | | namap | varchar(100) | NO | | NULL | | | statusp | varchar(30) | NO | | NULL | | | usiap | varchar(10) | NO | | NULL | | | sukup | varchar(100) | NO | | NULL | | | agamap | varchar(50) | NO | | NULL | | | kotap | varchar(100) | NO | | NULL | | | hobip | varchar(200) | NO | | NULL | | | kelaminp | varchar(10) | NO | | NULL | | +----------+--------------+------+-----+---------+----------------+ 9 rows in set (0.035 sec) |
Ok, Langkah awal kalian akan diarahkan untuk membuat project terlebih dahulu. yaitu buat folder website kamu “siaptaaruf”, Silahkan buka Git Bash..dan ketikan
1 2 |
cd siaptaaruf npm init -y |
Hasilnya akan berupa package.json dengan isi sebagai berikut ini :
1 2 3 4 5 6 7 8 9 10 11 12 |
{ "name": "siaptaaruf", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC" } |
Kamu akan melakukan instalasi express, body parser dan melakukan download paket driver mysql. Langkah selanjutnya yaitu ketikkan.
1 |
npm install express mysql body-parser --save |
Sekarang coba lihat dalam project kamu nanti akan ada folder node_modules dan package-lock.json biarkan saja itu, tandanya paket kamu telah berhasil di install. Sekarang coba lihat kembali pada package.json awal, maka kamu akan mendapati hal itu berubah seperti ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "name": "siaptaaruf", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "body-parser": "^1.19.0", "express": "^4.17.1", "mysql": "^2.18.1" } } |
Lihat pada dependencies, disitu telah ditambahkan body-parser, express dan mysql dengan versi yang berbeda-beda tentunya. Masih bermain dengan package.json ya, Karena kalian memang harus paham betul konfigurasi disini.
Langkah selanjutnya yaitu membuat server, ini penting agar RestAPI yang kita buat dapat berjalan pada browser. Silahkan buat file baru pada direktori folder website kita, yaitu siaptaaruf dan simpan file tersebut dengan nama server.js, Tulis kode berikut ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
//load paket express const express = require("express"); //load body-parser const bodyParser = require("body-parser"); const app = express(); //------------------------------------------------------------------------- // parse permintaan jenis konten - application / json app.use(bodyParser.json()); // parse permintaan jenis konten - application / x-www-form-urlencoded app.use(bodyParser.urlencoded({ extended: true })); //------------------------------------------------------------------------- // route awalan yaitu index app.get("/", (req, res) => { res.json({ message: "Selamat datang di RestApi Siaptaaruf." }); }); //------------------------------------------------------------------------- // port untuk server lokal const PORT = process.env.PORT || 3000; app.listen(PORT, () => { console.log(`Server berjalan pada Port : ${PORT}.`); }); |
Bisa dibaca juga keterangan pada kode diatas ya.. tapi intinya kita akan menjalankan port itu di 3000, bukan ilove you 3000 ya..hehe. Sampai disini ternyata belum selesai. Sekarang instal paket nodemon, agar nantinya ketika perubahan terjadi pada file, kita tidak perlu meload server kita secara manual. Ketikkan berikut ini pada git bash kamu.
1 |
npm install --save-dev nodemon |
Maka sekali lagi lihat, dan ubah sedikit isi package.json kamu menjadi berikut ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
{ "name": "siaptaaruf", "version": "1.0.0", "description": "platform untuk menemukan pasangan yg siap taaruf", "main": "server.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "nodemon server.js" }, "keywords": [ "siaptaaruf", "nodejs", "express", "mysql", "restapi" ], "author": "inidigitalnetwork", "license": "ISC", "dependencies": { "body-parser": "^1.19.0", "express": "^4.17.1", "mysql": "^2.18.1" }, "devDependencies": { "nodemon": "^2.0.7" } } |
Kamu hanya perlu menambahkan kode pada baris 8 dan 5 jika itu dilihat pada text editor kamu, kurang lebih di baris itu. yaitu lebih tepatnya ubah main dari index.js menjadi server.js Kemudian pada start menjadi nodemon server.js
1 2 3 4 5 6 7 8 9 |
{ "name": "siaptaaruf", "version": "1.0.0", "description": "platform untuk menemukan pasangan yg siap taaruf", "main": "server.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "nodemon server.js" }, |
Sampai disini selesai deh.. gampang dan mudah kan ya.. Sekarang tinggal jalankan server.js nya seperti berikut ini, ketik pada git bash direktori project kamu :
1 |
npm start |
maka kamu akan mendapatkan hasil seperti berikut
Gampang ya. Semoga bermanfaat. Selanjutnya saya akan membahas tentang menampilkan data. Dan simak terus turorial membuat RestAPI pada situs initekno.com pada artikel selanjutnya.
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #1 Membuat Project ExpressJS
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #2 Menampilkan Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #3 Insert Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #4 Update Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #5 Hapus Data
Tinggalkan Balasan