Giáo trình Phát triển mã nguồn mở với NodeJS - Ngành/nghề: Thiết kế trang web

ỦY BAN NHÂN DÂN TỈNH LÂM ĐỒNG  
TRƯỜNG CAO ĐẲNG NGHỀ ĐÀ LẠT  
GIÁO TRÌNH  
MÔN HỌC/ MÔ ĐUN: PHÁT TRIỂN MÃ NGUỒN MỞ VỚI  
NODEJS  
NGÀNH/ NGHỀ: THIẾT KẾ TRANG WEB  
TRÌNH ĐỘ: CAO ĐẲNG  
Ban hành kèm theo Quyết định số: 1157/QĐ-CĐNĐL ngày 11 tháng 12 năm  
2019 của Hiệu trưởng Trường Cao đẳng Nghề Đà Lạt  
(LƯU HÀNH NỘI BỘ)  
Lâm Đồng, năm 2019  
TUYÊN BỐ BẢN QUYỀN  
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép  
dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.  
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh  
thiếu lành mạnh sẽ bị nghiêm cấm.  
Giáo trình được lưu hành nội bộ Trường Cao đẳng Nghề Đà Lạt.  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 1  
LỜI GIỚI THIỆU  
Vài nét về xuất xứ giáo trình:  
Giáo trình này được viết theo căn cứ Thông tư số 03/2017/TT-BLĐTBXH ngày  
01 tháng 03 năm 2017 của Bộ Lao động – Thương binh và Xã hội về việc Quy định về  
quy trình xây dựng, thẩm định và ban hành chương trình; tổ chức biên soạn, lựa chọn,  
thẩm định giáo trình đào tạo trình độ trung cấp, trình độ cao đẳng.  
Quá trình biên soạn:  
Giáo trình này được biên soạn có sự tham gia tích cực của các giáo viên có kinh  
nghiệm, cùng với những ý kiến đóng góp quý báu của các chuyên gia về lĩnh vực công  
nghệ thông tin.  
Mối quan hệ của tài liệu với chương trình, mô đun/môn học:  
Căn cứ vào chương trình đào tạo nghề Thiết kế trang web, giáo trình giúp cung  
cấp cho người học những kiến thức cơ bản về lập trình NodeJS cũng như kỹ năng lập  
trình cơ sở dữ liệu MySQL bằng ngôn ngữ NodeJS.  
Để học được mô đun này người học cần có kiến thức cơ bản về HTML và cơ sở  
dữ liệu.  
Cấu trúc chung của giáo trình này bao gồm 4 bài:  
Bài 1. Tổng quan về nodejs  
Lời cảm ơn  
Giáo trình được biên soạn trên cơ sở các văn bản quy định của Nhà nước và tham  
khảo nhiều tài liệu liên quan có giá trị. Song chắc hẳn quá trình biên soạn không tránh  
khỏi những thiếu sót nhất định. Ban biên soạn mong muốn và thực sự cảm ơn những ý  
kiến nhận xét, đánh giá của các chuyên gia, các thầy cô đóng góp cho việc chỉnh sửa  
để giáo trình ngày một hoàn thiện hơn.  
Lâm Đồng, ngày 10 tháng 12 năm 2019  
Tham gia biên soạn  
1. Phạm Đình Nam  
2. Ngô Thiên Hoàng  
3. Nguyễn Quỳnh Nguyên  
4. Phan Ngọc Bảo  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 2  
MỤC LỤC  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 3  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 4  
BÀI 1. TỔNG QUAN VỀ NODEJS  
1. Giới thiệu về NodeJS  
Mặc dù Nodejs mới ra đời năm 2009 nhưng được rất nhiều chuyên gia lập trình  
quan tâm và được sử dụng rộng rãi trong tất cả các lĩnh vực, chạy trên hầu hết các hệ  
điều hành. Đây là một nền tảng của Server và được xây dựng dựa trên Javascript  
Engine.  
Nếu bạn thực sự đam mê với lập trình web thì bạn nên học Nodejs, vì nó sẽ là  
một trong những ngôn ngữ chiếm ưu thế trong tương lai. Hiện tại xu hướng năm 2017  
đang là học lập trình Nodejs, hi vọng bộ giáo trình video bài học lập trình Nodejs  
cơ bản dưới đây sẽ giúp ích các bạn rất nhiều trong con đường trở thành lập trình viên.  
2. Thiết lập môi trường  
Các đoạn code node.js thực chất là các đoạn mã Javascript. Node.js sẽ được sử  
dung để thông dịch và thực thi các đoạn code Javascript.  
Node.js phân phối dưới dạng các bản cài đặt cho các hệ điều hành Linux, Mac  
OS X và Windown với các phiên bản 32 bit và 64 bit.  
Để cài đặt Node.js các bạn có thể truy cập vào kho lưu trữ của Node.js và tải  
xuống bản cài đặt phù hợp với hệ điều hành mình đang sử dụng.  
Cài đặt trên Windows  
Tải tệp cài đặt với định dạng .msi trên trang chủ download của Node.js  
Chạy tệp cài đăt với định dạng .msi mà bạn đã tiến hành tải xuống trước đó  
Làm theo hướng dẫn trong trình cài đặt.  
Khởi động lại máy tính: Bạn sẽ không thể nào chạy được Node.js nếu không khởi  
động lại máy tính sau khi cài đặt.  
Cài đặt trên MacOs  
Tải tệp cài đặt với định dạng .pkg trên trang chủ Node.Js  
Mở tệp cài đặt với định dạng .pkg mà bạn vừa tải xuống  
Làm theo các bước của hướng dẫn của bộ cài đặt  
Cài đặt trên Linux  
Với các máy chạy hệ điều hành Linux các bạn có thể cài đặt bằng cách tải xuống  
và giải nén các tệp lưu trữ .tar.gz , sau đó chuyển các tệp được giải nén vào thư  
mục /usr/local/nodejs  
Tải tệp lưu trữ .tar.gz  
Tạo thư mục /usr/local/nodejs  
Để tạo thư mục các bạn chạy command với lệnh sausudo mkdir -p  
/usr/local/nodejs giải nén tệp tar.gz mà bạn vừa tải về để giải nén các bạn đi vào thư  
mục dowload Node.js trước đó và chạy command với lệnhtar xvfz filename.tar.gzVí  
dụ ở đây tôi đang tải về phiên bản 10.13.0 với tên file là node-v10.13.0.tar.gz  
Di chuyển file tất cả các file vừa giải nén vào thư mục /usr/local/nodejs  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 6  
     
Các bạn dùng command với lệnh sau để di chuyển file  
sudo mv node-v10.10.0/* /usr/local/nodejs  
Sau khi các chạy xong lệnh để kiểm tra xem đã chuyển thành công nodejs  
vào /usr/local/nodejs hay chưa các bạn chạy thêm các lệnh sau  
cd /usr/local/nodejs  
ls  
Nếu như hiện thị danh dách file như thế này tức là các bạn đã di chuyển thành  
công  
Thêm biến môi trường node vào PATH  
Để thêm biến môi trường node vào PATH các bạn chạy command với lệnh  
sauexport PATH=$PATH:/usr/local/nodejs/bin  
Kiểm tra Node.js  
Sau khi cài đặt xong để chắc chắn là Node.js đã được cài đặt trên máy của bạn.  
Các bạn chạy lệnh command sau để kiểm tra  
node -v  
3. Module trong Node.js  
Khi các bạn viết một ứng dụng Node.js bạn có thể đặt tất cả code của bạn vào  
một tệp nào đó, cho dù ứng dụng của bạn có lớn hay phức tạp đến như thế nào. Trình  
thông dịch nodejs sẽ không quan tâm đến vấn đề đấy.  
Nhưng về mặt tổ chức code bạn sẽ rất khó khăn để có thể quản lý các đoạn code  
của mình. Vì vậy, như một thói quen các bạn nên quan tâm nhiều hơn về cấu trúc code  
của mình. Đây là lý do mà module được đưa vào Node.js  
Bạn có thể nghĩ đơn giản về các module Node.js như các thư viện Javascript hay  
một phần nào đó trong code của bạn (ví dụ tập hợp các hàm) mà bạn muốn giữ lại để  
có thể tái sử dụng nó sau này.  
Ở Node.js các bạn sẽ gặp 3 loại Module  
Module tích hợp : là loại module được Node.js tích hợp sẵn cho các bạn khi cài  
Node.js. Các bạn có thể xem danh sách module được tích hợp sẵn.  
Module bên ngoài: các module này được chia sẻ từ các lập trình viên khác nhau  
trên thế giới thông qua một kho quản lý ở bên ngoài. Cụ thể ở đây là NPM  
Module tạo riêng của các bạn: Các module tích hợp và module bên ngoài được  
cung cấp bởi những người khác, nhưng bạn có thể tạo ra các module Node.js của riêng  
bạn.  
Tạo module của bạn  
Ví dụ sau sẽ hướng dẫn các bạn tự tao ra một module myRandom cung cấp một  
hàm trợ giúp trả về số ngẫu nhiên từ 1 đến 10.  
Trước tiên các bạn tạo một tệp Javascript mới. Ở đây tôi sẽ tạo một tệp với  
tên myRandom.js  
Ở trong tệp myRandom.js các bạn viết nội dung sau  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 7  
 
function getRandom(min, max) {  
return Mapath.random() * (max - min) + min;  
}
module.export.between1and10 = function() {  
return getRandom(1, 10);  
}
Với tệp này sẽ cung cấp ra bên ngoài cho các module khác sử dụng thông  
qua module.exports . Ở đây tôi sẽ tạo một tệp khác với tên index.js để có thể sử dụng  
các chức năng đã exports.  
Tiếp theo các bạn tạo thêm tệp mới để có thể nhận chức năng đã được exports ra  
bên trong myRandom.js  
Các bạn tạo tệp index.js và thêm nội dung sau vào  
var myRandom = require('./myRandom');  
console.log(myRandom.between1and10())  
Ở đây các bạn sẽ thấy tôi có dùng require để truy cập vào mã của  
module myRandom mà chúng ta vừa tạo.  
Bây giờ để kiểm tra Module chúng ta vừa viết có hoạt động được hay không có  
bạn đi vào thư mục chứa file index.js mà các bạn vừa tạo và chạy command với cú  
pháp.  
node index  
4. Tìm hiểu về NPM  
Ở bài trước tôi có nói tới 3 dạng module trong node.js là Module tích hợp,  
module bên ngoài và module tự tạo.  
Module tích hơp là module có sẵn , module tự tạo là do chúng ta tạo ra, module  
bên ngoài là các module được các lập trình viên trên khắp thế giới chia sẻ.  
Vậy thì làm thế nào chúng ta có thể biết được các module được chia sẻ ở đâu, và  
sử dụng module đó như thế nào. Trong phần này chúng ta sẽ tìm hiểu cách sử dụng  
NPM để quản lý các module bên ngoài.  
NPM là gì?  
NPM là từ viết tắt của cụm từ (Node Package Manager).  
NPM cung cấp cho chúng ta 2 chức năng sau:  
o
Kho lưu trữ module trực tuyến cho Node.js  
o
Tiện ích dòng lệnh (command) để cài đặt các module, package Node.js  
quản lý phiên bản và sự phụ thuộc của các package node.js  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 8  
 
Cài đặt và cấu hình NPM  
Cài đặt NPM  
Mặc định NPM sẽ đi kèm với trình cài đặt Node.js vì thế các bạn sẽ không cần  
phải cài đặt NPM.  
Sau khi cài đặt NPM và Node.js các bạn có thể kiểm tra và cập nhật NPM lên  
phiên bản mới bằng command:  
npm install npm@lastest -g  
Cấu hình package  
Các cấu hình package của Node.js được chứa trong một tệp có tên package.json  
mà bạn có thể tìm thấy thư mục gốc của các dự án hoặc các module.  
Bạn có thể tạo tệp thiết lập mới bằng các chạy command  
npm init  
Bạn sẽ phải điiền vào một số thông tin ví dụ như:  
package name: Tên gói của bạn (npm sẽ lấy mặc định là tên thư mục của bạn)  
version: phiên bản của gói (mặc định 1.0.0)  
description: Mô tả về gói của bạn  
…  
Cuối cùng nó sẽ hỏi bạn có đồng ý lưu cấu hình hay không. Các bạn nhập yes để  
lưu lại.  
Sau khi lưu xong thì trong thư mục dự án của bạn sẽ xuất hiện file package.json  
Hướng dẫn sử dụng NPM  
Install package  
Với hơn 800.000 package trên kho package của NPM các bạn có thể tự do cài đặt  
các gói phù hợp với ứng dụng của mình.  
Trước tiên các bạn tìm kiếm package ở trên trang chủ chủ của NPMJS ở phần Search  
Package  
Sau khi các bạn tìm được module phù hợp cho ứng dụng của mình, các bạn có  
thể cài đặt nó bằng cú pháp.  
npm install <package name>  
Ví dụ: Tôi muốn cài đặt một package mang tên express (đây là web framework  
basic của Node.js)  
– Để cài đặt các bạn đi vào thư mục gốc của project . Sau đó mở command với  
npm chúng ta sẽ chủ yếu thao tác với Command line nhé.  
Sau khi cài đặt xong các bạn sẽ thấy project của các bạn xuất hiện thêm một thư  
1 với tên "node_modules" . Đây là thư mục chứa các module được cài đặt từ npm.  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 9  
Đồng thời ở file package.json sẽ thêm vào dependencies tên thư viện mà các bạn  
vừa cài.  
Ngoài các bạn có thể cài các package với nhiều tùy chọn khác nhau.  
npm install -g <package name> //Cài toàn cục  
npm install --save-dev <packeage name> //cài đặt chỉ phục vụ cho việc  
phát triển  
npm install <package name>@<version> //Lựa chọn phiên bản muốn cài  
đặt  
Uninstall Package  
Để gỡ bỏ một package hoặc nhiều package nào đó. Các bạn sử dụng command  
với lệnh .  
npm uninstall <package name>  
Ví dụ tôi muốn xóa bỏ package express vừa cài ở trên  
Sau khi gỡ xong thì file package.json cũng thay đổi theo  
Update package  
Khi muốn nâng cấp một gói nào đó các bạn có thể sử dụng command lệnh sau.  
npm update <package name>  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 10  
Bài 2. Các Module trong NodeJS  
1. Module HTTP  
Với Node.js để có thể tạo ra web application chúng ta không phải chỉ có việc  
triển khai ứng dụng của mình là được, mà chúng ta phải triển khai toàn bộ máy chủ  
HTTP.  
Vì vậy Module HTTP cho phép chúng ta có thể tạo ra các máy chủ HTTP trong ứng  
dụng của mình.  
1.1 Xây dựng máy chủ HTTP cơ bản  
Trước tiên để bắt đầu tìm hiểu về module HTTP hoạt động như thế nào thì chúng  
ta cùng chạy 1 ví dụ đơn giản.  
Ở đây tôi có 1 đoạn code đơn giản dùng để tạo server cơ bản ở trong Node.js.  
var http = require('http');  
var server = http.createServer(function(request, response) {  
response.writeHead(200, {"Content-Type": "text/plain; charset=UTF-8"});  
response.write("Chào mừng bạn đến với Học viện công nghệ VietPro");  
response.end();  
});  
server.listen(8000, function (error) {  
if (error) return;  
console.log("Server listen in port 8000");  
});  
Bây giờ các bạn hãy tạo 1 file với tên server.js ở thư mục gốc project của bạn và  
đưa đoạn code bên trên vào.  
Tiếp theo hãy lưu nó lại và tiến hành mở command line tại thư mục gốc với lệnh.  
node server  
Cuối cùng, hãy mở trình duyệt của bạn và truy cập vào địa  
chỉ http://localhost:8000 . Trên trình duyệt sẽ xuất hiện nội dung sau.  
Nếu nhìn thấy hiện thị như thế này tức là các bạn đã tạo ra được cho mình một  
máy chủ hoạt động trên Node.js rồi đấy. Phần tiếp theo tôi sẽ phân tích cho các bạn  
hiểu về cách hoạt động của module HTTP này nhé.  
1.2 Phân tích máy chủ HTTP  
Ở dòng đầu tiên của đoạn code trên, tôi yêu cầu module HTTP của Node.js và  
làm cho nó có thể truy cập được thông qua biến http.  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 11  
       
Sau đó tôi gọi một trong những chức năng mà module này cung  
cấp: createServer . Hàm này trả về một đối tượng, đối tượng này có 1 phương thức là  
listen, và nhận vào tham số là cổng mà máy chủ HTTP sẽ lắng nghe.  
var http = require('http');  
var server = http.createServer();  
server.listen(8000);  
Với đoạn mã này sẽ làm cho máy chủ của chúng ta nghe được tại cổng 8000 thế  
nhưng máy chủ của chúng ta vẫn chưa thể hoạt động được với đoạn mã này.  
Bây giờ để máy chủ của chúng ta thực sự hoạt động và phản hồi các yêu cầu của  
người dùng , chúng ta sẽ phải truyền vào trong hàm createServer một tham số đó là  
một hàm ẩn danh với 2 tham số.  
tham số thứ nhất: request chứa những thông tin của người dùng gửi lên  
tham số thứ hai: response chứa những thông tin mà chúng ta muốn trả về để đáp  
ứng yêu cầu của request đó.  
var http = require('http');  
var server = http.createServer(function(request, response) {  
});  
server.listen(8000);  
1.3 Truyền hàm cho máy chủ hoạt động  
Bên trong hàm ẩn danh sẽ có 2 tham số là resquest (đại diện cho các thông tin  
của người dùng gửi lên) còn response (đại diện cho thông tin server trả về).  
Nhìn vào ví dụ đầu tiên các bạn sẽ thấy response tôi có sử dụng 2 phương 3  
phương thức đó là writeHead, write, end  
1.4 Phương thức writeHead  
Phương thức writeHead dùng để thiết lập header phản hồi cho các yêu cầu  
của request.  
writeHead(statusCode, statusMessage, headers);  
Trong đó:  
statusCode : Mã trạng thái phản hồi, mã trạng thái tham khảo <Number>  
statusMessage: Lời nhắn của trạng thái <String>  
headers: là các tiêu đề phản hồi của máy chủ, các bạn có thể tìm hiểu thêm về  
HTTP header tại đây <Object>  
1.5 Phương thức write  
Phương thức này thiết lập nội dung mà server muốn trả về cho trình duyệt, nội  
dụng này có thể là text đơn thuần hoặc code HTML.  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 12  
     
Cú pháp:  
response.write(content, encoding);  
Trong đó:  
content: Nội dung muốn trả về trình duyệt  
encoding: Loại mã hóa ký tự. Mặc định UTF-8  
Ví dụ: trả về trình duyệt nội dung “Chào mừng các bạn đến với Node.js của học  
viện công nghệ VietPro” và được bao trong thẻ <b>  
resonse.write("&lt;b&gt;Chào mừng các bạn đến với Node.js của học  
viện công nghệ VietPro&lt;/b&gt;")  
1.6 Phương thức end  
Phương thức này thông báo tất cả phản hồi đã được gửi. và phương thức này phải  
được gọi trên mỗi response.  
2. Làm việc với file trong Node.js  
Node.js cung cấp module fs để có thể truy cập hệ thống file. Module fs chịu trách  
nhiệm cho tất cả các hoạt động I/O (Input / Output) đồng bộ hoặc không đồng bộ.  
Với module fs tôi sẽ yêu cầu nó và sẽ gán vào biến fs để có thể truy cập module  
này nhé.  
var fs = require("fs");  
2.1 Đọc nội dung file  
Đọc file không đồng bộ  
Sử dụng phương thức fs.readFile() để đọc file không đồng bộ.  
cú pháp:  
fs.readFile(pathfile, options, callback);  
Mô tả về tham:  
pathfile: Đường dẫn đầy đủ và tên của file dưới dạng chuỗi  
options: Tham số tùy chọn có thể là đối tượng hoặc chuối bào gồm mã hóa và cờ  
hiệu Mã hóa mặc định là utf8 và cờ mặc định là “r”.  
callback: Hàm gọi lại khi thao tác đọc file hoàn thành, hàm có 2 tham số là error  
và data.  
Ví dụ: Có một file mẫu demo.txt với nội dung "Chào bạn đến với học viện công  
nghệ VietPro" bây giờ tôi sẽ dùng phương thức đọc file không đồng bộ của  
module fs để đọc nội dụng file này.  
File demo.txt  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 13  
     
Chào bạn đến với học viện công nghệ VietPro  
File index.js  
var fs = require('fs'); //Gọi module fs  
/**  
* Thực hiện đọc file không đồng bộ  
* */  
fs.readFile("demo.txt", function(error, data) {  
if (error) throw error;  
console.log(data.toString())  
});  
Cuối cùng để kiểm tra các bạn chạy command với lệnh  
node index  
Kết quả nhận được:  
Trong đoạn mã trên hàm callback sẽ được thực thi khi quá trình đọc file hoàn  
thành và kết quả trả về sẽ được đưa vào tham số data.  
Mặc định data sẽ có kiểu dữ liệu là Buffer vì thế tôi đã dùng toString() để chuyển  
nó về kiểu String thông thường.  
Đọc file đồng bộ  
Sử dụng phương thức fs.readFileSync() để đọc file đồng bộ.  
Khác với đọc file không đồng bộ là kết quả trả về sẽ được xử lý trong hàm  
callback còn với đọc file đồng bộ thì kết quả sẽ được trả về trực tiếp sau khi mà  
chương trình đọc xong.  
Cú pháp  
fs.readFileSync(pathfile, options);  
Mô tả tham số:  
pathfile: Đường dẫn đầy đủ và tên của file dưới dạng chuỗi  
options: Tham số tùy chọn có thể là đối tượng hoặc chuối bào gồm mã hóa và cờ  
hiệu Mã hóa mặc định là utf8 và cờ mặc định là “r”.  
Ví dụ: Tương tự với ví dụ ở đọc file không đồng bộ thì tôi sẽ thực hiện bằng cú  
pháp của đọc file đồng bộ.  
Chỉnh nội dung file index.js thành.  
var fs = require('fs'); //Gọi module fs  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 14  
/**  
* Thực hiện đọc file không đồng bộ  
* */  
var content = fs.readFile("demo.txt");  
console.log(content.toString());  
Tiếp tục chạy command với lệnh  
node index  
Kết quả chúng ta vẫn nhận được dòng chữ với nội dung "Chào bạn đến với học  
viện công nghệ VietPro".  
2.2 Ghi nội dung vào file  
Ghi file không đồng bộ  
Sử dụng fs.writeFile() để ghi file không đồng bộ  
Cú pháp:  
fs.writeFile(pathfile, content[,options], callback);  
Mô tả tham số:  
pathfile: Đường dẫn tuyệt đối của file, hoặc tên file  
content: Nội dung muốn ghi vào file  
options: Tham số tùy chọn có thể là đối tượng hoặc chuối bào gồm mã hóa và cờ  
hiệu Mã hóa mặc định là utf8 và cờ mặc định là “r”.  
callback: Hàm gọi lại khi thao tác ghi nội dung vào file hoàn thành  
Ví dụ: Ghi vào file writeDemo.txt với nội dung "Học lập trình node.js tại học  
viện công nghệ VietPro"  
Tạo file mới với tên writeFile.js và đưa nội dung bên dưới vào.  
var fs = require('fs'); //Gọi module fs  
/**  
* Thực hiện viết nội dung vào file demo.txt  
* */  
fs.writeFile("writeDemo.txt", "Cao đẳng nghề Đà Lạt",  
function(error) {  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 15  
 
if (error) throw error;  
console.log("Nội dung đã được ghi thành công")  
});  
chạy command với lệnh  
node writeFile  
Kết quả nhận được  
Đồng thời module fs sẽ tạo ra file writeDemo.txt với nội dung " Cao đẳng nghề  
Đà Lạt "  
Ghi file đồng bộ  
Sử dụng fs.writeFileSync() để ghi file không đồng bộ.  
Cú pháp  
fs.writeFileSync(pathfile, content[,options]);  
Mô tả tham số  
pathfile: Đường dẫn tuyệt đối của file, hoặc tên file  
content: Nội dung muốn ghi vào file  
options: Tham số tùy chọn có thể là đối tượng hoặc chuối bào gồm mã hóa và cờ  
hiệu Mã hóa mặc định là utf8 và cờ mặc định là “r”.  
Ví dụ: Tượng tự với vị dụ phần ghi file không đồng bộ thay thế cú pháp ghi file  
không đồng bộ bằng cú pháp ghi file đồng bộ.  
var fs = require('fs'); //Gọi module fs  
/**  
* Thực hiện viết nội dung vào file demo.txt  
* */  
var error = fs.writeFileSync("writeDemo.txt", "Học lập trình Node.js  
tại học viện công nghệ VietPro");  
if (error) return;  
console.log("Nội dung đã được ghi thành công");  
Chạy lại command với lệnh  
node writeFile  
chúng ta vẫn sẽ nhận được kết quả tương tự.  
2.3 Xóa file  
Xóa file không đồng bộ  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 16  
 
Sử dụng fs.unlink() để xóa file không đồng bộ.  
Cú pháp:  
fs.unlink(pathfile, callback);  
Mô tả tham số  
pathfile: đường dẫn tuyệt đối file hoặc tên file muốn xóa.  
callback: Hàm gọi lại khi thao tác xóa file hoàn thành.  
Ví dụ: Xóa file demo.txt ở ví dụ phần đọc file. Tạo file removeFile.js và đưa nội  
dung phía dưới vào.  
var fs = require('fs');  
fs.unlink('demo.txt', function(error) {  
if (error) throw error;  
console.log("File đã được xóa thành công");  
});  
chạy command với lệnh.  
node removeFile  
Xóa file đồng bộ  
Sử dụng fs.unlinkSync() để xóa file đồng bộ.  
Cú pháp:  
fs.unlinkSync(pathfile);  
Mô tả tham số:  
pathfile: đường dẫn file muốn xóa.  
Ví dụ:  
var fs = require('fs');  
fs.unlinkSync('demo.txt');  
3. Module URL  
3.1 Giới thiệu  
Module URL cung cấp các tiện ích cho phép bạn phân giải và phân tích URL. Nó  
có thể được truy cập bằng cách sử dụng  
var url = require('url');  
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 17  
   
Module URL là một trong các module đi kèm với Node.js sử dụng để phân tích  
URL và các thuộc tính khác của URL.  
Bằng cách sử dụng module URL nó cung cấp cho chúng ta rất nhiều thuộc tính  
để làm việc với đường dẫn.  
Thuộc tính  
Mô tả  
.href  
Cung cấp một đường dẫn URL hoàn chỉnh  
Cung cấp tên máy chủ lưu trữ và cổng  
Tên của máy chủ  
.host  
.hostname  
.path  
Cung cấp tên đường dẫn URL  
Cung cấp tên máy chủ , cổng và tên đường dẫn  
Cổng máy chủ  
.pathname  
.port  
.auth  
Phân quyền của đường dẫn  
.protocol  
.search  
Giao thức được sử dụng cho việc gửi yêu cầu  
Trả về chuỗ truy vấn được đính kèm với URL  
3.2 Phân tích URL  
Để phân tích một đường dẫn bằng module url các bạn có thể dùng cú pháp  
url.parse(url);  
Ví dụ:  
Phân tich URL sau:  
Tạo file index.js  
/**  
* Ví dụ phân tích các thành phần của URL  
*
Phạm Đình Nam – Trường Cao đẳng nghề Đà Lạt  
Trang 18  
 
Tải về để xem bản đầy đủ
pdf 72 trang yennguyen 22980 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Phát triển mã nguồn mở với NodeJS - Ngành/nghề: Thiết kế trang web", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_phat_trien_ma_nguon_mo_voi_nodejs_nganhnghe_thiet.pdf