Xây dựng một máy chủ HTTP

Cách xây dựng máy chủ HTTP với Node.js

Đây là máy chủ web HTTP mà chúng tôi đã sử dụng làm ứng dụng Node Hello World trongGiới thiệu Node.js

const http = require('http')

const hostname = ‘localhost’ const port = 3000

const server = http.createServer((req, res) => { res.statusCode = 200 res.setHeader(‘Content-Type’, ‘text/plain’) res.end(‘Hello World\n’) })

server.listen(port, hostname, () => { console.log(Server running at http://</span><span style="color:#e6db74">${</span><span style="color:#a6e22e">hostname</span><span style="color:#e6db74">}</span><span style="color:#e6db74">:</span><span style="color:#e6db74">${</span><span style="color:#a6e22e">port</span><span style="color:#e6db74">}</span><span style="color:#e6db74">/) })

Hãy phân tích ngắn gọn. Chúng tôi bao gồmhttpmô-đun.

Chúng tôi sử dụng mô-đun để tạo một máy chủ HTTP.

Máy chủ được đặt để lắng nghe trên tên máy chủ được chỉ định,localhost, trên cảng3000. Khi máy chủ đã sẵn sàng,listenhàm gọi lại được gọi.

Hàm gọi lại mà chúng tôi truyền là hàm sẽ được thực thi theo mọi yêu cầu đến. Bất cứ khi nào nhận được một yêu cầu mới,requestbiến cốđược gọi, cung cấp hai đối tượng: một yêu cầu (mộthttp.IncomingMessageđối tượng) và một phản hồi (mộthttp.ServerResponsevật).

requestcung cấp các chi tiết yêu cầu. Thông qua đó, chúng tôi truy cập các tiêu đề yêu cầu và dữ liệu yêu cầu.

responseđược sử dụng để điền dữ liệu mà chúng tôi sẽ trả lại cho khách hàng.

Trong trường hợp này với

res.statusCode = 200

chúng tôi đặt thuộc tính Mã trạng thái thành 200, để cho biết phản hồi thành công.

Chúng tôi cũng đặt tiêu đề Loại-Nội dung:

res.setHeader('Content-Type', 'text/plain')

và chúng tôi kết thúc đóng phản hồi, thêm nội dung làm đối số choend():

res.end('Hello World\n')

Tải xuống miễn phí của tôiSổ tay Node.js


Các hướng dẫn nút khác: