Khung công tác Node.js chủ yếu được sử dụng để tạo các ứng dụng dựa trên máy chủ. Khung có thể dễ dàng được sử dụng để tạo các máy chủ web có thể phục vụ nội dung cho người dùng.
Có một loạt các mô-đun như mô-đun "http" và "request", giúp xử lý các yêu cầu liên quan đến máy chủ trong không gian máy chủ web. Chúng ta sẽ xem xét cách chúng ta có thể tạo một ứng dụng máy chủ web cơ bản bằng cách sử dụng Node js.
Nút làm máy chủ web sử dụng HTTP
Hãy xem một ví dụ về cách tạo và chạy ứng dụng Node js đầu tiên của chúng ta.
Ứng dụng của chúng tôi sẽ tạo một mô-đun máy chủ đơn giản sẽ lắng nghe trên cổng số 7000. Nếu một yêu cầu được thực hiện thông qua trình duyệt trên cổng số này, thì ứng dụng máy chủ sẽ gửi phản hồi 'Hello World' đến máy khách.
Giải thích mã:
- Chức năng cơ bản của hàm request là nó đọc một tệp JavaScript, thực thi tệp và sau đó tiến hành trả về đối tượng xuất. Vì vậy, trong trường hợp của chúng tôi, vì chúng tôi muốn sử dụng chức năng của mô-đun http, chúng tôi sử dụng hàm request để nhận các chức năng mong muốn từ mô-đun http để nó có thể được sử dụng trong ứng dụng của chúng tôi.
- Trong dòng mã này, chúng tôi đang tạo một ứng dụng máy chủ dựa trên một chức năng đơn giản. Hàm này được gọi bất cứ khi nào có yêu cầu đối với ứng dụng máy chủ của chúng tôi.
- Khi nhận được yêu cầu, chúng tôi nói rằng hãy gửi phản hồi với loại tiêu đề là '200.' Con số này là phản hồi bình thường được gửi trong tiêu đề http khi phản hồi thành công được gửi đến máy khách.
- Trong chính phản hồi, chúng tôi đang gửi chuỗi 'Hello World.'
- Sau đó, chúng tôi đang sử dụng hàm server.listen để làm cho ứng dụng máy chủ của chúng tôi lắng nghe các yêu cầu của khách hàng trên cổng số 7000. Bạn có thể chỉ định bất kỳ cổng nào khả dụng tại đây.
Nếu lệnh được thực thi thành công, Đầu ra sau đây sẽ được hiển thị khi bạn chạy mã của mình trong trình duyệt.
Đầu ra:
Từ đầu ra,
- Bạn có thể thấy rõ rằng nếu chúng tôi duyệt đến URL của localhost trên cổng 7000, bạn sẽ thấy chuỗi 'Hello World' được hiển thị trong trang.
- Bởi vì trong mã của chúng tôi, chúng tôi đã đề cập cụ thể cho máy chủ lắng nghe trên cổng số 7000, chúng tôi có thể xem đầu ra khi duyệt đến url này.
Đây là mã để bạn tham khảo
var http=require('http')var server=http.createServer((function(request,response){response.writeHead(200,{"Content-Type" : "text/plain"});response.end("Hello World\n");}));server.listen(7000);
Xử lý các yêu cầu GET trong Node.js
Thực hiện một Yêu cầu GET để lấy dữ liệu từ một trang web khác tương đối rất đơn giản trong Node.js. Để thực hiện yêu cầu Nhận trong nút, trước tiên chúng ta cần cài đặt mô-đun yêu cầu. Điều này có thể được thực hiện bằng cách thực hiện dòng sau trong dòng lệnh
yêu cầu cài đặt npm
Lệnh trên yêu cầu trình quản lý gói Node tải xuống các mô-đun yêu cầu bắt buộc và cài đặt chúng cho phù hợp.
Khi mô-đun npm của bạn đã được cài đặt thành công, dòng lệnh sẽ hiển thị tên và phiên bản mô-đun đã cài đặt:
Trong ảnh chụp nhanh ở trên, bạn có thể thấy rằng mô-đun 'yêu cầu' cùng với số phiên bản 2.67.0 đã được tải xuống và cài đặt.
Bây giờ chúng ta hãy xem mã có thể sử dụng lệnh 'yêu cầu' này.
Giải thích mã:
- Chúng tôi đang sử dụng mô-đun 'yêu cầu' đã được cài đặt ở bước cuối cùng. Mô-đun này có các chức năng cần thiết có thể được sử dụng để thực hiện các yêu cầu GET đến các trang web.
- Chúng tôi đang thực hiện GET Request tới www.google.com và sau đó gọi một hàm khi nhận được phản hồi. Khi nhận được phản hồi, các tham số (lỗi, phản hồi và nội dung) sẽ có các giá trị sau
- Lỗi - Trong trường hợp có bất kỳ lỗi nào nhận được khi sử dụng yêu cầu GET, nó sẽ được ghi lại tại đây.
- Phản hồi- Phản hồi sẽ có các tiêu đề http được gửi lại trong phản hồi.
- Nội dung- Nội dung sẽ chứa toàn bộ nội dung của phản hồi do Google gửi.
- Trong phần này, chúng tôi chỉ ghi nội dung nhận được trong tham số body vào tệp console.log. Vì vậy, về cơ bản, bất cứ thứ gì chúng ta nhận được bằng cách truy cập www.google.com sẽ được ghi vào console.log.
Đây là mã để bạn tham khảo
var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});
Tóm lược
- Khung Node.js có thể được sử dụng để phát triển các máy chủ web bằng mô-đun 'http'. Ứng dụng có thể được thực hiện để lắng nghe trên một cổng cụ thể và gửi phản hồi đến máy khách bất cứ khi nào có yêu cầu đối với ứng dụng.
- Mô-đun 'yêu cầu' có thể được sử dụng để lấy thông tin từ các trang web. Thông tin sẽ chứa toàn bộ nội dung của trang web được yêu cầu từ trang web có liên quan.