Ví dụ tạo URL Express trong NodeJs

Ví dụ tạo URL Express trong NodeJs là vấn đề được nhiều lập trình viên quan tâm, bởi những kiến thức trên trường lớp là không đủ, vì vậy bài Ví dụ tạo URL Express trong NodeJs sẽ chia sẻ tới bạn nhiều thông tin hữu ích

Mọi người vẫn hỏi tôi về việc học lập trình nói chung và NodeJS nói riêng có cần năng khiếu hay quá khó để tiếp cận hay không. Thì tôi có thể trả lời rằng, học lập trình cũng như việc bạn học tiếng Anh hay bất kỳ một ngôn ngữ khác, bởi lập trình...là ngôn ngữ của máy tính, để máy tính đọc và máy tính thực hiện theo yêu cầu của mình, bạn thích là học được.

Trong bài viết này chúng ta sẽ cùng nhau đi tìm hiểu về cách xây dựng URL trong Express, phần này sẽ phụ thuộc rất nhiều về phần Routes trong Express, các bạn hãy tham khảo bài viết đó trước khi tiếp tục bài viết này nhé.

Trong Express bạn có thể khai báo đường dẫn cố định hoặc đường dẫn động, việc sử dụng đường dẫn động giúp chúng ta có thể điều hướng người dùng tới nhiều nơi hơn. Ví dụ ở đây mình có URL tĩnh:

  https://example.com/admin 

và đây là đường dẫn động:

  https://example.com/posts/1  
https://example.com/posts/2  
https://example.com/posts/3 

Nội dung bài viết sẽ chủ yếu tập chung ra những cách khởi tạo đường dân động (dynamic URL) .

1. Đường dẫn tĩnh (Static URL)

Ở đây mình có một đường dẫn tĩnh, để khai báo trong Express bạn chỉ thêm chỉ định route patch là path mà bạn muốn khởi tạo. Chúng ta sẽ có ví dụ như sau :

  var express = require('express');  
var app = express();    
app.get('/admin', function(req, res){
     res.send('Admin Page');
  });  
app.listen(3000); 

Tiến hành khởi chạy đường dẫn sẽ hiển thị như sau:

Đây là một phần khá đơn giản nên mình chỉ tập chung vào dynamic URL bên duới.

2. Đường dẫn động (Dymanic URL)

Route paths có thể là một string, string patterns hay regular express, chúng ta có thể khởi tạo một Dymanic URL bằng cách sử dụng regular express patch và string paterns.

Các ký tự như ?, +, * và () là cách ký tự regular express hay được sử dụng. Ký tự ngạch ngang (-) và chấm (.) được mặc định là một string-based path.

Route parameters

Tham số được đặt tên trong các phân đoạn URL được sử dụng để bắt các giá trị được chỉ định tại vị trí của chúng trong URL. Các giá trị đã ghi vào đối tượng req.params, với key của tham số tuyến được chỉ định trong đường dẫn, và value là giá trị tương ứng của chúng.

  Route path: /users/:userId/books/:bookId  
Request URL: http://localhost:3000/users/34/books/8989  
req.params: { "userId": "34", "bookId": "8989" } 

Để chỉ định một route parameters chúng ta sử dụng cú pháp sau:

  app.get('/users/:userId/books/:bookId', function (req, res) {    res.send(req.params)  }) 

Ngoài ra bạn còn có thể thêm pattern match cho router params :

  app.get('/things/:id([0-9]{5})', function(req, res){     res.send('id: ' + req.params.id);  });   

Dưới đây mình có môt ví dụ:

  var express = require('express');
var app = express();
 
app.get('/members/:memberID([0-9]{2})', function(req, res){
   res.send(req.params);
});
app.listen(3000); 

Lưu ý rằng các params name phải là ký tự từ ([A-Za-z0-9_]).

Pattern Matched Routes

Bạn cũng có thể sử dụng string paterns trong paths, ở đây mình có một vài ví dụ :

Route này sẽ có path là acd hoặc abcd

  app.get('/ab?cd', function (req, res) {    res.send('ab?cd')  }) 

Route này sẽ có path là abcd, abbcd, abbbcd,vv...

  app.get('/ab+cd', function (req, res) {    res.send('ab+cd')  }) 

Route này sẽ có path là abcd, abxcd, abRANDOMcd, ab123cd,vv...

  app.get('/ab*cd', function (req, res) {    res.send('ab*cd')  }) 

Route này sẽ có path là /abe và /abcde

  app.get('/ab(cd)?e', function (req, res) {    res.send('ab(cd)?e)  }) 

Regular expressions Routes

Ngoài ra, bạn còn có thể sử dụng regular express trong path route. Ở đây mình có một vài ví dụ :

Chỉ match với kí tự a.

  app.get(/a/, function (req, res) {    res.send('/a/')  }) 

Match với số điện thoại:

  app.get('/phonenumbers/((09|03|07|08|05)+([0-9]{8}))', function(req, res){     res.send(req.params);  }); 

Trong bài này chúng ta đã cùng nhau đi tìm hiểu về xây dựng URL trong Express, đây là kiến thức rất cơ bản về nó nhưng cũng hết sức quan trọng trong quá trình làm việc với Express. Mong rằng bài viết sẽ giúp ích cho bạn

Hy vọng với bài viết về Ví dụ tạo URL Express trong NodeJs đã giải đáp giúp bạn phần nào về kiến thức lập trình NodeJS. Như tôi đã nói, ngôn ngữ lập trình không quan trọng bằng tư duy giải thuật, tư duy logic để giải quyết vấn đề.

Với những năm trước đây, lập trình viên là một cái nghề khó và kén chọn người học, đồng nghĩa với việc thu nhập hàng tháng của các lập trình viên luôn cao. Còn những năm gần đây, thì lập trình là môn học phổ thông, và ai cũng nên học một ngôn ngữ lập trình nào đó.

Nếu bạn còn bất kỳ câu hỏi nào trong việc học lập trình online, hãy gửi yêu cầu cho tôi qua email hoidapcode.com@gmail.com hoặc để lại comment bên dưới, tôi sẽ giải đáp trong vòng 24 giờ!

Blog hoidapcode.com là blog được tổng hợp tự động các bài học, thông tin về lập trình trên mạng internet. Nếu bạn có ý kiến hoặc đóng góp về bài viết này, hãy liên hệ với tôi!