NodeJS Basic Tut 7 : Khởi tạo server Node.js với HTTP module

0
(0)

Nguồn : toidicode.com

1, HTTP Module là gì?

-Chỉ cần nghe qua cái tên thì chắc hẳn các bạn cũng đã hiểu được một phần về nhiệm vụ của module này là gì đúng không? HTTP là một module được tích hợp sẵn vào trong Node.js (nên sẽ không cần phải download), module này có nhiệm vụ khởi tạo một cổng kết nối HTTP server trả về client.

2, Khởi tạo server với HTTP module.

-Để sử dụng được bất kỳ module nào trong Node.js thì chúng ta cần phải require module đó. Và để require một module trong Node.js chúng ta sử dụng từ khóa require.

VD: require module http.

var http = require('http');

-Tiếp đó để khởi tạo server trong HTTP module chúng ta sử dụng 2 phương thức createServer().listen().

VD: khởi tạo một con server chạy port 8000.

var http = require('http');

http.createServer().listen(8000);

-Bên trong phương thức createServer chứa một phương thức ẩn danh có 2 tham số truyền vào.

  • Tham số thứ nhất: là biến chứa các thông số liên quan đến request mà người dùng gửi lên.
  • Tham số thứ hai là biến chứa các thông số liên quan đến response mà chúng ta muốn trả về client.

3, Ví dụ.

-Sau khi đã biết được các lý thuyết liên quan đến HTTP module rồi thì giờ chúng ta cùng thử khởi tạo một con server helloword đơn giản xem thế nào nhé!

Đầu tiên mình sẽ tạo một tệp tin index.js trong thư mục node-tutorial (các bạn lưu ở đâu cũng đc nhé) có nội dung như sau:

// khai báo sử dụng module HTTP
var http = require('http');

//Khởi tạo server chạy cổng 8000
http.createServer(function (request, response) {
    //thiết lập giá trị server trả về
    response.write('hello world! toidicode.com');
    response.end();
}).listen(8000);

Tiếp đó các bạn chỉ cần run file index.js lên (ai không biết run xem lại).

node index.js

Sau đó các bạn mở trình duyệt lên và truy cập 1 trong 2 link sau:

4, Các phương thức và thuộc tính hay dùng trong resquest và response.

writeHead()

-Hàm writeHead() thiết lập kiểu dữ liệu mà server muốn trả về.

VD: Thiết lập server trả về là một trang HTML.

// khai báo sử dụng module HTTP
var http = require('http');

//Khởi tạo server chạy cổng 8000
http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/html'});
    response.write('Hello world');
    response.end();
}).listen(8000);

write()

-Hàm này thiết lập nội dung mà server muốn trả về trình duyệt, nội dung này có thể là text có thể là HTML code.

VD: Trả về một trang HTML có thẻ H1 chứa dòng chữ hello world.

// khai báo sử dụng module HTTP
var http = require('http');

//Khởi tạo server chạy cổng 8000
http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/html'});
    response.write('<html>');
    response.write('<head>');
    response.write('<title>Hello world </title>');
    response.write('</head>');
    response.write('<body> <h1>Hello world<h1> </body>');
    response.write('</html>');
    response.end();
}).listen(8000);

url

-Thuộc tính này chứa các paramter trong URL mà client gửi lên server.

VD:

// khai báo sử dụng module HTTP
var http = require('http');

//Khởi tạo server chạy cổng 8000
http.createServer(function (request, response) {
    var param = request.url;
    response.write(param);
    response.end();
}).listen(8000);

Lúc này các tiền tố phía sau domain sẽ được hiện ra nếu có: vd http://localhost:8000/toidicode thì url sẽ là /toidicode.

5, Lời kết.

-Phía trên là đôi chút cơ bản về HTTP module trong node.js mà mình muốn giới thiệu với mọi người, ngoài ra các bạn có thể xem thêm tại đây. Các bạn cố gắng nhớ cho mình phần này, vì các phần sau sẽ phải cần đến nó!.

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Related posts

Full-text search with RediSearch Nodejs

NodeJS Basic tut 15: Module hóa trong Node.js

NodeJS Basic tut 14:Tạo Client Request trong Node.js