Node.js và Express.js là hai công nghệ phổ biến được sử dụng để xây dựng các ứng dụng web. Node.js là một nền tảng được xây dựng dựa trên JavaScript và sử dụng một kiến trúc I/O không đồng bộ để tăng hiệu suất cho các ứng dụng web. Express.js là một framework web được xây dựng trên Node.js và cung cấp cho chúng ta các tính năng giúp dễ dàng xây dựng một ứng dụng web, chẳng hạn như routing và xử lý các yêu cầu HTTP.
Trong hướng dẫn này, chúng ta sẽ học cách sử dụng Node.js và Express.js để xây dựng một RESTful API đơn giản.
1. Cài đặt Node.js và Express.js
Trước khi bắt đầu phát triển ứng dụng của chúng ta, chúng ta cần phải cài đặt Node.js và Express.js.
Bạn có thể tải xuống và cài đặt Node.js từ trang web chính thức của Node.js. Sau khi cài đặt Node.js, bạn sẽ có thể sử dụng Node.js trên máy tính của mình.
Tuy nhiên, để sử dụng Express.js, chúng ta cần cài đặt nó thông qua Node.js. Cài đặt Express.js khá đơn giản, hãy mở terminal và gõ lệnh sau:
npm install -g express-generator
Lệnh này sẽ cài đặt Express.js globally trên hệ thống của bạn, cho phép bạn sử dụng Express.js trong bất kỳ ứng dụng Node.js nào.
2. Tạo một thư mục ứng dụng Node.js mới
Tiếp theo, chúng ta cần tạo một thư mục mới để chứa các tệp tin của ứng dụng của chúng ta.
Bạn có thể đặt tên cho thư mục của mình, ví dụ như “node-api”. Sau khi tạo được thư mục của mình, hãy mở terminal và di chuyển đến thư mục đó bằng cách sử dụng lệnh cd:
cd /path/to/node-api
3. Sử dụng Express.js để tạo ứng dụng Node.js
Bây giờ chúng ta cần sử dụng lệnh express để tạo ra một ứng dụng Node.js sử dụng Express.js. Chúng ta có thể sử dụng lệnh sau để tạo ra ứng dụng của mình.
express --view=pug myapp
Lệnh này sẽ tạo ra một ứng dụng Node.js với tên myapp và sử dụng view engine Pug. Pug là một view engine miễn phí cho Node.js được sử dụng để tạo ra các trang web tĩnh và động.
4. Cài đặt các thư viện cần thiết
Sau khi chúng ta đã tạo được ứng dụng của mình, chúng ta cần cài đặt các thư viện cần thiết cho ứng dụng. Để sử dụng các tính năng của Express.js, chúng ta cần cài đặt các thư viện sau:
body-parser: Sử dụng để xử lý dữ liệu được gửi bởi người dùng thông qua các biểu mẫu.cors: Sử dụng để kích hoạt Cross Origin Resource Sharing (CORS), đảm bảo rằng API của chúng ta chỉ có thể được truy cập từ các domain và port được khai báo.dotenv: Sử dụng để cấu hình các biến môi trường trong ứng dụng của chúng ta.morgan: Sử dụng để ghi lại các yêu cầu HTTP trong hệ thống của bạn.
Bạn có thể cài đặt các thư viện này bằng cách sử dụng lệnh sau:
npm install body-parser cors dotenv morgan -–save
5. Xác định các routes cho RESTful API
Một trong những tính năng quan trọng nhất của Express.js là routing. Routing cho phép chúng ta xác định các đường dẫn URI có thể được truy cập thông qua API của chúng ta.
Bây giờ, chúng ta cần xác định một số route để bắt đầu xây dựng RESTful API.
Trong ví dụ này, chúng ta sẽ xác định hai route: một cho việc lấy tất cả các data về người dùng, ví dụ như /users, và một cho việc lấy chi tiết data của một người dùng, ví dụ như /users/:id.
Mở tệp tin app.js và thêm các đoạn code sau đây:
var express = require('express');
var logger = require('morgan');
var bodyParser = require('body-parser');
var cors = require('cors');
var app = express();
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cors());
var users = [
{id: 0, name: 'John Doe'},
{id: 1, name: 'Jane Smith'}
];
app.get('/users', function(req, res, next) {
res.json(users);
});
app.get('/users/:id', function(req, res, next) {
var user = users.filter(function(user) {
return user.id === parseInt(req.params.id);
});
if (user.length === 0) {
res.status(404).json({message: 'User not found'});
} else {
res.json(user[0]);
}
});
Trong đoạn code này, chúng ta đã import các module và khởi tạo các biến cho server của mình, bao gồm một mảng các người dùng giả lập. Sau đó, chúng ta đã định nghĩa hai routes:
- một để trả về tất cả các người dùng,
- và một để trả về chi tiết của một người dùng cụ thể.
Route đầu tiên sẽ trả về một mảng các người dùng trong trường hợp chúng ta gửi một yêu cầu GET tới URI /users.
Route thứ hai sẽ trả về chi tiết của một người dùng cụ thể trong trường hợp chúng ta gửi một yêu cầu GET tới URI /users/:id, trong đó :id là một tham số động được mã hóa trên URI.
6. Bắt đầu server
Bây giờ chúng ta đã hoàn thành việc xây dựng ứng dụng của mình, hãy bắt đầu server và kiểm tra xem API hoạt động như thế nào.
Để bắt đầu server của chúng ta, hãy sử dụng lệnh sau:
npm start
Lệnh này sẽ khởi động server của chúng ta trên cổng mặc định 3000. Truy cập vào trình duyệt của bạn tại địa chỉ http://localhost:3000/users để xem danh sách người dùng hoặc http://localhost:3000/users/0 để xem thông tin về người dùng đầu tiên.
KẾT LUẬN
Trong bài viết này, chúng ta đã học cách sử dụng Node.js và Express.js để xây dựng một RESTful API đơn giản. Chúng ta đã thực hiện các bước khác nhau từ cài đặt môi trường phát triển đến xác định các routes cho API của chúng ta.
Bây giờ bạn đã có thể bắt đầu phát triển các ứng dụng web sử dụng Node.js và Express.js.
Hy vọng các kiến thức bạn đã thu được từ bài viết này sẽ giúp ích cho việc phát triển ứng dụng của bạn trong tương lai.
HỌC BÀI TIẾP THEO: Tạo CRUD với Node.js, Express.js, và MongoDB – RESTful API
