Boost Keahlian Anda: Pelatihan Aplikasi Web & REST API Node.js
Daftar Isi
Pengantar Pelatihan
Selamat datang di pelatihan Boost Keahlian Anda: Pelatihan Aplikasi Web & REST API Node.js . Dalam ebook ini, Anda akan mempelajari dasar-dasar hingga teknik lanjutan dalam membangun aplikasi web dan REST API menggunakan Node.js. Pelatihan ini dirancang untuk membantu Anda menguasai teknologi backend modern yang banyak digunakan di industri.

Pengenalan Node.js
Node.js adalah platform runtime JavaScript yang berjalan di luar browser dan memungkinkan Anda membangun aplikasi server-side yang cepat dan scalable. Dengan Node.js, Anda dapat menggunakan JavaScript untuk membuat server web, mengakses database, dan membangun REST API.
Beberapa keunggulan Node.js antara lain:
- Non-blocking I/O dan event-driven architecture
- Ekosistem npm yang sangat besar
- Mudah dipelajari bagi yang sudah familiar dengan JavaScript
- Digunakan oleh banyak perusahaan besar

Membangun Aplikasi Web dengan Express
Express adalah framework web minimalis dan fleksibel untuk Node.js yang memudahkan pembuatan aplikasi web dan API. Dengan Express, Anda dapat dengan cepat membuat routing, middleware, dan menangani request-response.
Contoh sederhana membuat server Express:
const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Halo, dunia!');
});
app.listen(port, () => {
console.log(`Server berjalan di http://localhost:${port}`);
});

Membuat REST API
REST API (Representational State Transfer Application Programming Interface) adalah standar komunikasi antara client dan server menggunakan HTTP. Dengan REST API, Anda dapat membuat layanan yang dapat diakses oleh berbagai aplikasi.
Contoh endpoint REST API sederhana dengan Express:
app.get('/api/users', (req, res) => {
res.json([
{ id: 1, name: 'Budi' },
{ id: 2, name: 'Sari' }
]);
});

Integrasi Database dengan MongoDB
MongoDB adalah database NoSQL yang populer dan mudah digunakan bersama Node.js. Dengan MongoDB, Anda dapat menyimpan data dalam format JSON yang fleksibel.
Contoh koneksi MongoDB menggunakan Mongoose:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/mydb', {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const userSchema = new mongoose.Schema({
name: String,
email: String,
});
const User = mongoose.model('User', userSchema);

Autentikasi dan Keamanan
Autentikasi adalah proses verifikasi identitas pengguna. Dalam aplikasi web dan API, penting untuk mengamankan endpoint dengan autentikasi dan otorisasi.
Contoh menggunakan JSON Web Token (JWT) untuk autentikasi:
const jwt = require('jsonwebtoken');
function generateToken(user) {
return jwt.sign({ id: user._id, name: user.name }, 'secretkey', { expiresIn: '1h' });
}
function verifyToken(token) {
try {
return jwt.verify(token, 'secretkey');
} catch (err) {
return null;
}
}

Deploy Aplikasi ke Server
Setelah aplikasi selesai dibuat, langkah selanjutnya adalah melakukan deploy ke server agar dapat diakses oleh pengguna. Anda dapat menggunakan layanan seperti Heroku, Vercel, atau VPS pribadi.
Contoh deploy sederhana menggunakan Heroku:
- Install Heroku CLI
-
Login ke Heroku dengan
heroku login
-
Buat aplikasi baru dengan
heroku create
-
Push kode ke Heroku dengan
git push heroku main

Penutup dan Langkah Selanjutnya
Selamat! Anda telah mempelajari dasar-dasar membangun aplikasi web dan REST API menggunakan Node.js. Untuk meningkatkan keahlian, Anda dapat mempelajari topik lanjutan seperti GraphQL, WebSocket, microservices, dan testing otomatis.
Teruslah berlatih dan eksplorasi teknologi baru agar keahlian Anda semakin berkembang dan siap menghadapi tantangan dunia pengembangan aplikasi modern.
