Pada tutorial kali ini saya akan membagikan cara membuat RESTful API menggunakan node. js, express, dan MySQL langkah demi langkah Show
Mari kita mulai Dapatkan paket hosting diskon 75% dan domain gratis + tambahan diskon 5% dengan menggunakan kupon. MEMIKIRKANPesan sekarang
Apakah Api adalah RESTful API?RESTful API merupakan implementasi dari API (Application Programming Interface) REST (REpresentational State Transfer) adalah arsitektur metode komunikasi yang menggunakan protokol HTTP untuk pertukaran data dan metode ini sering diterapkan dalam pengembangan aplikasi. Ini mungkin terdengar rumit tetapi sebenarnya tidak Tujuannya adalah untuk membuat sistem dengan kinerja yang baik, cepat, dan mudah untuk diperluas (skala), terutama dalam pertukaran data dan komunikasi
Mengapa membuat RESTful API?Jika Anda melihat arsitektur tradisional komunikasi data antara klien dan server terlihat seperti gambar berikut Dimana client mengirimkan permintaan ke server melalui HTTP Request, dan server memberikan respon melalui HTTP Response Respon yang diberikan oleh server biasanya dalam format HTML Nah, bayangkan jika Anda harus memperluas situs web Anda ke aplikasi Seluler seperti Android atau iOS Anda tahu bahwa aplikasi Android atau iOS tidak memerlukan HTML sebagai respon dari server Karena Android dan iOS menggunakan bahasa pemrograman yang berbeda dan tidak mengenal HTML Oleh karena itu, kita perlu membuat RESTful API RESTful API ini akan menjadi jembatan komunikasi data antara client dan server Jadi, server tidak lagi mengirimkan HTML sebagai respon, melainkan hanya data Ya, hanya data Hal inilah yang dapat menghemat bandwidth server Respon berupa data ini dapat digunakan untuk berbagai platform dari aplikasi dengan bahasa pemrograman yang berbeda Respon berupa data ini, biasanya dalam format JSON atau XML Namun, yang paling umum digunakan adalah JSON Pada tutorial kali ini, kita akan membuat RESTful API dengan response data dalam format JSON Berikut adalah arsitektur dari RESTful API Di mana klien dapat mengakses dari berbagai platform, seperti aplikasi web, desktop, atau aplikasi seluler Keren bukan? Oke, mari kita mulai
Langkah 1. Desain API tenangIni penting Sebelum membuat RESTful API, ada baiknya kita tentukan terlebih dahulu EndPoint dari RESTful API yang akan dibuat EndPoint adalah route dari API yang akan kita buat RESTful API menggunakan kata kerja HTTP Kata kerja HTTP yang umum digunakan adalah GET, POST, PUT, dan DELETE GET untuk mendapatkan data dari server atau lebih dikenal dengan READ, POST untuk CREATE data baru, PUT untuk UPDATE data, dan DELETE untuk menghapus data Atau lebih dikenal dengan CRUD (Create Read Update Delete) Pada tutorial kali ini saya akan share cara membuat RESTful API sederhana untuk mengambil data dari server (GET), membuat data baru ke server (POST), mengupdate data ke server (PUT), dan menghapus data ke server ( DELETE) dari tabel di database, yaitu tabel produk Berikut adalah rancangan dari RESTful API yang akan kita buat
Langkah 2. Buat Database dan TabelBuat database baru dengan MySQL, Anda bisa menggunakan alat seperti SQLyog, PHPMyAdmin atau sejenisnya Disini saya membuat database dengan nama restful_db Jika Anda membuat database dengan nama yang sama itu lebih baik Untuk membuat database dengan MySQL, dapat dilakukan dengan mengeksekusi query berikut CREATE DATABASE restful_db; Perintah SQL diatas akan membuat database dengan nama restful_db Selanjutnya, buat tabel di database restful_db Disini saya membuat tabel dengan nama produk Jika Anda membuat tabel dengan nama yang sama itu lebih baik. Untuk membuat tabel produk, dapat dilakukan dengan mengeksekusi perintah SQL berikut CREATE TABLE product( product_id INT(11) PRIMARY KEY AUTO_INCREMENT, product_name VARCHAR(200), product_price INT(11) )ENGINE=INNODB;_ Selanjutnya, masukkan beberapa data ke dalam tabel produk dengan menjalankan kueri berikut INSERT INTO product(product_name,product_price) VALUES ('Product 1','2000'), ('Product 2','5000'), ('Product 3','4000'), ('Product 4','6000'), ('Product 5','7000'); Perintah SQL di atas akan memasukkan 5 data ke dalam tabel produk
Langkah #3. Instal DependensiSebelum install dependencies silahkan buat folder, disini saya membuat folder dengan nama restful-api Perhatikan gambar berikut untuk lebih jelasnya Dimana folder restful-api ini akan menjadi folder project kita di tutorial ini Ayo lanjutkan, Dalam tutorial ini, kita membutuhkan 3 dependensi yaitu 1. Ekspres (simpul. kerangka js) 2. MySQL (driver mysql untuk node. js) 3. Body-parser (middleware untuk menangani permintaan post body) Untuk menginstal dependensi pada node. js dapat dilakukan dengan mudah menggunakan NPM (Node Package Manager) Anda dapat menjalankan NPM di Terminal atau Command Prompt Namun pada tutorial ini saya tidak menggunakan Command Prompt, melainkan menggunakan Git Bash Terminal Saya sangat merekomendasikan Anda juga menggunakan Git Bash Anda dapat mengunduh Git Bash di url berikut https. //git-scm. com/download Silahkan download sesuai platform anda, lalu install di komputer anda Jika sudah menginstal Git Bash, silahkan buka folder restful-api yang sudah dibuat tadi Kemudian klik kanan dan pilih Git Bash Here, seperti yang ditunjukkan pada gambar berikut Maka akan muncul terminal seperti gambar berikut Di terminal di atas, Anda dapat menginstal semua dependensi yang Anda perlukan untuk proyek Anda Sebelum menginstal dependensi, kita perlu membuat sebuah paket. json Untuk membuat paket. json, Anda dapat menjalankan perintah berikut di terminal npm init Seperti gambar berikut ini Perintah di atas akan membuat sebuah file bernama package. json secara otomatis di proyek Anda Lebih-lebih lagi, Instal semua dependensi yang diperlukan dengan mengetikkan perintah berikut di terminal npm install --save express mysql body-parser_ Seperti gambar berikut ini Perintah di atas akan menginstal semua dependensi yang kita butuhkan yaitu. express, mysql, dan body-parser Jika file paket dibuka. json, maka tampilannya akan seperti berikut { "name": "restful-api", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "M Fikri", "license": "ISC", "dependencies": { "body-parser": "^1.18.3", "express": "^4.16.4", "mysql": "^2.16.0" } }
Langkah #4. Buat file Indeks. jsBuat file dengan nama index. js. Seperti gambar berikut ini Kemudian buka index. js dan ketik kode berikut const express = require('express'); const bodyParser = require('body-parser'); const app = express(); const mysql = require('mysql'); // parse application/json app.use(bodyParser.json()); //create database connection const conn = mysql.createConnection({ host: 'localhost', user: 'root', password: '', database: 'restful_db' }); //connect to database conn.connect((err) =>{ if(err) throw err; console.log('Mysql Connected...'); }); //tampilkan semua data product app.get('/api/products',(req, res) => { let sql = "SELECT * FROM product"; let query = conn.query(sql, (err, results) => { if(err) throw err; res.send(JSON.stringify({"status": 200, "error": null, "response": results})); }); }); //tampilkan data product berdasarkan id app.get('/api/products/:id',(req, res) => { let sql = "SELECT * FROM product WHERE product_id="+req.params.id; let query = conn.query(sql, (err, results) => { if(err) throw err; res.send(JSON.stringify({"status": 200, "error": null, "response": results})); }); }); //Tambahkan data product baru app.post('/api/products',(req, res) => { let data = {product_name: req.body.product_name, product_price: req.body.product_price}; let sql = "INSERT INTO product SET ?"; let query = conn.query(sql, data,(err, results) => { if(err) throw err; res.send(JSON.stringify({"status": 200, "error": null, "response": results})); }); }); //Edit data product berdasarkan id app.put('/api/products/:id',(req, res) => { let sql = "UPDATE product SET product_name='"+req.body.product_name+"', product_price='"+req.body.product_price+"' WHERE product_id="+req.params.id; let query = conn.query(sql, (err, results) => { if(err) throw err; res.send(JSON.stringify({"status": 200, "error": null, "response": results})); }); }); //Delete data product berdasarkan id app.delete('/api/products/:id',(req, res) => { let sql = "DELETE FROM product WHERE product_id="+req.params.id+""; let query = conn.query(sql, (err, results) => { if(err) throw err; res.send(JSON.stringify({"status": 200, "error": null, "response": results})); }); }); //Server listening app.listen(3000,() =>{ console.log('Server started on port 3000...'); });_
Langkah #5. PengujianUji API yang telah kita buat untuk memastikan RESTful API bekerja dengan baik Untuk menguji API, ada banyak alat yang bisa digunakan Pada tutorial ini saya menggunakan POSTMAN untuk menguji API yang telah kita buat Jika Anda juga menggunakan POSTMAN itu lebih baik Anda dapat mengunduh POSTMAN di situs resminya https. // www. getpostman. com/ Download dan Install POSTMAN di komputer kemudian buka Jika POSTMAN sudah terbuka maka akan terlihat seperti gambar berikut Ok, waktunya untuk pengujian Menjalankan proyek dengan mengetikkan perintah node index Pada terminal seperti gambar berikut Jika terlihat seperti gambar di atas, berarti sudah berjalan dengan baik Mari kita uji EndPoint satu per satu
#1. Dapatkan Semua Produk (GET) Kembali ke POSTMAN, dan ketik URL berikut di bidang URL Tukang pos http. // localhost. 3000/api/produk Pilih metode GET, lalu klik tombol Send, maka hasilnya akan seperti gambar berikut Pada gambar diatas dapat dilihat bahwa EndPoint untuk mendapatkan semua data produk berjalan dengan baik
#2. Dapatkan Produk Tunggal (GET) Ketik URL berikut di kolom URL untuk mendapatkan satu produk http. // localhost. 3000/api/produk/2 Pilih dengan metode GET, lalu klik tombol Send, maka hasilnya akan seperti gambar berikut Pada gambar di atas hanya ditampilkan satu data produk yaitu produk dengan product_id='2' sesuai dengan parameter pada URL
#3. Buat Produk Baru (POST) Ketik URL berikut di kolom URL untuk membuat produk baru http. // localhost. 3000/api/produk Pilih metode POST, lalu masukkan data berikut di kolom JSON (application/json) { "product_name": "Product 6 Added", "product_price": 6000 }_ Kemudian klik tombol Send, maka hasilnya akan terlihat seperti gambar berikut Jika Anda melihat bagian respons, ada "affectedRows". 1, dan "masukkanId". 6 Artinya ada satu bagian data yang dimasukkan ke dalam database dengan product_id='6'
#4. Pembaruan Produk (PUT) Ketik URL berikut di kolom URL untuk memperbarui produk http. // localhost. 3000/api/produk/2 Pilih metode PUT, lalu masukkan data berikut di kolom JSON (application/json) { "product_name": "Product 2 Update", "product_price": 7000 }_ Kemudian klik tombol Send, maka hasilnya akan terlihat seperti gambar berikut Jika Anda melihat bagian respons, ada "affectedRows". 1, dan "berubahBaris". 1 Artinya ada satu data yang diupdate ke database dengan product_id='2' sesuai dengan parameter di URL
#5 Hapus Produk (HAPUS) Ketik URL berikut di kolom URL untuk menghapus produk http. // localhost. 3000/api/produk/6 Pilih dengan metode DELETE, lalu klik tombol Send, maka hasilnya akan seperti gambar berikut Jika Anda melihat bagian respons, ada "affectedRows". 1, "masukkanId". 0 , dan "changedRows". 0 Artinya ada satu data yang dihapus (delete) ke database dengan product_id='6' sesuai parameter di URL Terkait. Tutorial Membuat RESTful API dengan Node JS, Express, dan MongoDB KesimpulanPembahasan kali ini tentang cara membuat RESTful API sederhana dengan node. js, ekspres, dan mysql REST (REpresentational State Transfer) adalah arsitektur metode komunikasi yang menggunakan protokol HTTP untuk pertukaran data dan metode ini sering diterapkan dalam pengembangan aplikasi. Tujuannya adalah untuk membuat sistem dengan kinerja yang baik, cepat, dan mudah untuk diperluas (skala), terutama dalam pertukaran data dan komunikasi Dalam tutorial ini, Anda telah mempelajari cara membuat RESTful API sederhana dengan node. js, ekspres, dan mysql Apa fungsi DOM dalam JavaScript?“DOM atau Document Object Model adalah objek JavaScript khusus yang hanya ada di lingkungan Browser. Objek ini digunakan untuk mendapatkan struktur dokumen website, bahkan memanipulasinya . ”
Bagaimana cara mendeklarasikan variabel dalam JavaScript?Cara membuat variabel yang biasa digunakan di javascript< /a> adalah dengan menggunakan kata kunci var kemudian diikuti dengan nama variabel dan nilainya. Contoh. var title = "Pelajari Pemrograman Javascript "; . "Pelajari Pemrograman variabel bernama title dengan nilai berupa teks (string): "Belajar Pemrograman Javascript ".
Apa yang dimaksud dengan DOM?Document Object Model ( DOM ) adalah antarmuka pemrograman (antarmuka pemrograman) untuk HTML, XML dan SVG yang bersifat lintas platform dan bahasa - mandiri. Peramban web tidak boleh menggunakan DOM untuk menampilkan dokumen HTML.
Apa gunanya pengembalian dalam JavaScript?Hai, return that adalah nilai kembalian. artinya dimanapun fungsi dipanggil, itu akan berubah menjadi nilai kembalian. |