Bab 10: Menggunakan JavaScript di server
JavaScript dapat juga digunakan di server dengan menggunakan runtime Node.js. Node.js adalah platform yang dibangun di atas JavaScript Engine V8 yang dikembangkan oleh Google, yang memungkinkan pengeksekusian kode JavaScript di server. Dengan menggunakan Node.js, Anda dapat membuat aplikasi web yang menggunakan JavaScript sebagai bahasa pemrograman utamanya, tidak hanya sebagai bahasa pemrograman yang digunakan untuk menambahkan interaksi di halaman web.
Untuk menggunakan JavaScript di server dengan Node.js, pertama-tama Anda perlu menginstall Node.js di komputer Anda. Setelah itu, Anda dapat membuat file JavaScript di server dengan menggunakan editor teks biasa seperti Notepad atau Sublime Text. File tersebut dapat dijalankan di server dengan menggunakan perintah node nama_file.js di command prompt atau terminal.
Contoh sederhana menggunakan JavaScript di server dengan Node.js adalah sebagai berikut:
const http = require('http');
const server = http.createServer((request, response) => {
response.end('Hello, World!');
});
server.listen(3000, () => {
console.log('Server listening on port 3000');
});
Berikut ini adalah contoh sederhana implementasi CRUD (Create, Read, Update, Delete) menggunakan JavaScript di server dengan Node.js dan koneksi ke database PostgreSQL:
const express = require('express');
const { Client } = require('pg');
const app = express();
// Koneksi ke database PostgreSQL
const client = new Client({
host: 'hostname',
port: 5432,
user: 'username',
password: 'password',
database: 'database_name'
});
client.connect();
// Create
app.post('/api/users', (req, res) => {
const { name, email } = req.body;
const query = `INSERT INTO users (name, email) VALUES ('${name}', '${email}') RETURNING *`;
client.query(query, (error, result) => {
if (error) {
res.status(400).json({ error });
} else {
res.status(201).json(result.rows[0]);
}
});
});
// Read
app.get('/api/users', (req, res) => {
client.query('SELECT * FROM users', (error, result) => {
if (error) {
res.status(400).json({ error });
} else {
res.status(200).json(result.rows);
}
});
});
app.get('/api/users/:id', (req, res) => {
const { id } = req.params;
const query = `SELECT * FROM users WHERE id = ${id}`;
client.query(query, (error, result) => {
if (error) {
res.status(400).json({ error });
} else {
res.status(200).json(result.rows[0]);
}
});
});
// Update
app.put('/api/users/:id', (req, res) => {
const { id } = req.params;
const { name, email } = req.body;
const query = `UPDATE users SET name = '${name}', email = '${email}' WHERE id = ${id} RETURNING *`;
client.query(query, (error, result) => {
if (error) {
res.status(400).json({ error });
} else {
res.status(200).json(result.rows[0]);
}
});
});
// Delete
app.delete('/api/users/:id', (req, res) => {
const { id } = req.params;
const query = `DELETE FROM users WHERE id = ${id
RETURNING *`;
client.query(query, (error, result) => {
if (error) {
res.status(400).json({ error });
} else {
res.status(200).json(result.rows[0]);
}
});
});
app.listen(3000, () => {
console.log('Server listening on port 3000');
});
Setelah menuliskan kode di atas, Anda dapat mengakses API yang telah dibuat dengan mengirimkan request HTTP ke alamat yang sesuai dengan endpoint yang telah ditentukan. Misalnya, untuk mengirimkan request POST ke endpoint /api/users untuk menambah data ke database, Anda dapat menggunakan tools seperti cURL atau Postman dengan mengirimkan request seperti ini:
curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "email": "john@example.com"}' http://localhost:3000/api/users
Atau, untuk mengirimkan request GET ke endpoint /api/users untuk menampilkan semua data di database, Anda dapat menggunakan request seperti ini:
curl http://localhost:3000/api/users
Demikian pula, Anda dapat mengirimkan request ke endpoint lain sesuai dengan operasi CRUD yang diinginkan.
Pengenalan tentang Node.js dan cara menginstalnya
Node.js adalah platform yang dibangun di atas JavaScript Engine V8 yang dikembangkan oleh Google, yang memungkinkan pengeksekusian kode JavaScript di server. Node.js merupakan solusi yang populer untuk membuat aplikasi web real-time dengan performa tinggi, karena menggunakan event-driven dan non-blocking I/O model. Selain itu, Node.js juga memiliki ekosistem yang kaya akan library dan framework yang memudahkan pengembangan aplikasi.
Untuk menginstall Node.js, Anda dapat mengikuti langkah-langkah berikut:
Kunjungi halaman resmi Node.js di https://nodejs.org/
Klik tombol "Download" untuk mengunduh versi terbaru dari Node.js
Buka file installer yang telah diunduh, dan ikuti petunjuk yang ditampilkan untuk menginstall Node.js di komputer Anda
Setelah selesai, buka command prompt atau terminal, dan ketik node -v untuk memastikan Node.js telah terinstall dengan benar
Membuat server HTTP sederhana dengan JavaScript
Berikut ini adalah contoh sederhana membuat server HTTP menggunakan JavaScript di Node.js:
const http = require('http');
const server = http.createServer((request, response) => {
response.end('Hello, World!');
});
server.listen(3000, () => {
console.log('Server listening on port 3000');
});
Di sini, kode di atas akan membuat server HTTP yang akan menampilkan pesan "Hello, World!" pada browser ketika diakses melalui alamat http://localhost:3000.
Untuk menjalankan server di atas, simpan kode tersebut pada file JavaScript, kemudian jalankan file tersebut di command prompt atau terminal dengan mengetikkan node nama_file.js. Setelah itu, buka browser Anda, dan akses alamat http://localhost:3000 untuk melihat hasilnya.
Menggunakan module-module tambahan untuk meningkatkan fitur server
Untuk meningkatkan fitur server HTTP yang dibuat dengan JavaScript di Node.js, Anda dapat menggunakan module-module tambahan atau library yang tersedia di npm (Node.js Package Manager). npm adalah sistem paket yang terintegrasi dengan Node.js, yang memudahkan Anda untuk mengelola dependensi dan menginstall library yang dibutuhkan aplikasi Anda.
Berikut ini adalah beberapa contoh module atau library yang dapat Anda gunakan untuk meningkatkan fitur server HTTP:
Express: library yang memudahkan pengembangan aplikasi server-side dengan Node.js, dengan menyediakan beragam fitur seperti routing, middleware, dan template engine.
body-parser: middleware yang memudahkan pemrosesan data dari request HTTP, seperti data dari form atau JSON.
cors: middleware yang memungkinkan aplikasi mengelola akses yang diizinkan ke aplikasi dari domain lain.
nodemon: utility yang memungkinkan server menjalankan ulang secara otomatis setiap ada perubahan pada kode.
Untuk menggunakan module atau library di atas, pertama-tama Anda perlu menginstallnya dengan menggunakan perintah npm install nama_module di command prompt atau terminal. Kemudian, Anda dapat mengimport module tersebut ke dalam kode dengan menggunakan statement require('nama_module').
Contoh penggunaan beberapa module di atas dapat dilihat pada kode berikut:
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const app = express();
app.use(cors());
app.use(bodyParser.json());
app.get('/api/users', (req, res) => {
// Menampilkan semua data user dari database
});
app.post('/api/users', (req, res) => {
// Menambah data user ke database
});
app.listen(3000, () => {
console.log('Server listening on port 3000');
});
Last updated
Was this helpful?