07/07/2025
đ Node.js āĻ Express.js: āĻāϧā§āύāĻŋāĻ āĻāϝāĻŧā§āĻŦ āĻĄā§āĻā§āϞāĻĒāĻŽā§āύā§āĻā§āϰ āĻļāĻā§āϤāĻŋāĻļāĻžāϞ⧠āϝā§āĻāϞāĻŦāύā§āĻĻā§ đ
āĻŦāϰā§āϤāĻŽāĻžāύ āĻāϝāĻŧā§āĻŦ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻĄā§āĻā§āϞāĻĒāĻŽā§āύā§āĻā§ āĻĻā§āϰā§āϤāϤāĻž, āϏā§āĻā§āϞā§āĻŦāĻŋāϞāĻŋāĻāĻŋ āĻāĻŦāĻ āĻāĻžāϰā§āϝāĻāĻžāϰāĻŋāϤāĻž āĻā§āĻŦ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖāĨ¤
āĻāĻā§āώā§āϤā§āϰ⧠Node.js āĻāĻŦāĻ Express.js āĻāĻĒāύāĻžāϰ āϏāĻŦāĻā§āϝāĻŧā§ āĻŦāĻĄāĻŧ āϏāĻšāĻžāϝāĻŧāĻ āĻšāϝāĻŧā§ āĻāĻ āϤ⧠āĻĒāĻžāϰā§āĨ¤
đš Node.js āĻā§?
Node.js āĻšāϞ⧠āĻāĻāĻāĻŋ āĻāĻĒā§āύ āϏā§āϰā§āϏ, āĻā§āϰāϏ-āĻĒā§āϞā§āϝāĻžāĻāĻĢāϰā§āĻŽ āĻāĻžāĻāĻžāϏā§āĻā§āϰāĻŋāĻĒā§āĻ āϰāĻžāύāĻāĻžāĻāĻŽ āϝāĻž āϏāĻžāϰā§āĻāĻžāϰ-āϏāĻžāĻāĻĄā§ āĻāĻžāĻāĻžāϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāĻžāϞāĻžāϤ⧠āϏāĻā§āώāĻŽāĨ¤ āĻāϰ āĻāĻā§āύā§āĻ-āĻĄā§āϰāĻŋāĻā§āύ, āύāύ-āĻŦā§āϞāĻāĻŋāĻ I/O āĻŽāĻĄā§āϞ āĻāϝāĻŧā§āĻŦ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞā§āĻā§ āĻĻā§āϰā§āϤ āĻāĻŦāĻ āĻĻāĻā§āώ āĻāϰ⧠āϤā§āϞā§āĨ¤
đš Express.js āĻā§?
Express.js āĻšāϞ⧠Node.js āĻāϰ āĻāĻĒāϰ⧠āĻāĻāĻāĻŋ āĻŽāĻŋāύāĻŋ-āĻŽāĻžāϞāĻŋāϏā§āĻāĻŋāĻ, āĻĢāĻžāϏā§āĻ, āĻāĻŦāĻ āĻĢā§āϞā§āĻā§āϏāĻŋāĻŦāϞ āĻāϝāĻŧā§āĻŦ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻĢā§āϰā§āĻŽāĻāϝāĻŧāĻžāϰā§āĻāĨ¤ āĻāĻāĻŋ āϏāĻšāĻā§āĻ āϰāĻžāĻāĻāĻŋāĻ, āĻŽāĻŋāĻĄāϞāĻāϝāĻŧā§āϝāĻžāϰ āĻŦā§āϝāĻŦāϏā§āĻĨāĻžāĻĒāύāĻž āĻāĻŦāĻ API āĻĄā§āĻā§āϞāĻĒāĻŽā§āύā§āĻā§ āϏāĻžāĻšāĻžāϝā§āϝ āĻāϰā§āĨ¤
đš āĻā§āύ Express āĻ Node.js āĻŦā§āĻā§ āύā§āĻŦā§āύ?
āĻĻā§āϰā§āϤ āĻāĻŦāĻ āϞāĻžāĻāĻāĻāϝāĻŧā§āĻ
Node.js āĻāϰ āύāύ-āĻŦā§āϞāĻāĻŋāĻ āĻāϰā§āĻāĻŋāĻā§āĻāĻāĻžāϰā§āϰ āĻāĻžāϰāĻŖā§ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻĻā§āϰā§āϤ āϰāĻžāύ āĻāϰā§, āĻāϰ Express āĻāϰ āϏāĻšāĻ āϏā§āĻā§āϰāĻžāĻāĻāĻžāϰ āĻā§āĻĄāĻŋāĻāĻā§ āĻāϰ⧠āĻŦā§āĻļ āϏā§āĻŦāĻžāĻā§āĻāύā§āĻĻā§āϝāĻĒā§āϰā§āĻŖāĨ¤
āϏā§āĻā§āϞā§āĻŦāĻŋāϞāĻŋāĻāĻŋ
āĻāĻāĻžāϧāĻŋāĻ āĻā§āϞāĻžāϝāĻŧā§āύā§āĻā§āϰ āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āϏāĻšāĻā§āĻ āĻšā§āϝāĻžāύā§āĻĄā§āϞ āĻāϰāĻžāϰ āĻāύā§āϝ Node.js āĻĒāĻžāϰāĻĢā§āĻā§āĻāĨ¤ Express āĻĻāĻŋāϝāĻŧā§ āĻāĻĒāύāĻŋ āĻŽāĻĄā§āϞāĻžāϰāĻžāĻāĻāĻĄ āĻāϝāĻŧā§āĻŦ āϏāĻžāϰā§āĻāĻžāϰ āĻŦāĻžāύāĻžāϤ⧠āĻĒāĻžāϰāĻŦā§āύ āϝāĻž āĻŦāĻĄāĻŧ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύā§āĻ āϏā§āύā§āĻĻāϰāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§āĨ¤
āĻŦāĻšā§āĻŽā§āĻā§ āϰāĻžāĻāĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ
Express āϰāĻžāĻāĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ āĻĻāĻŋāϝāĻŧā§ āĻāĻĒāύāĻŋ āϏāĻšāĻā§āĻ RESTful API āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻĒāĻžāϰāĻŦā§āύ āϝāĻž āĻā§āϞāĻžāϝāĻŧā§āύā§āĻ āĻ āϏāĻžāϰā§āĻāĻžāϰā§āϰ āĻŽāϧā§āϝ⧠āĻĻā§āϰā§āϤ āĻĄā§āĻāĻž āĻāĻĻāĻžāύ-āĻĒā§āϰāĻĻāĻžāύ āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰā§āĨ¤
āĻŦā§āĻšā§ āĻāĻā§āϏāĻŋāϏā§āĻā§āĻŽ
NPM (Node Package Manager) āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻ
āϏāĻāĻā§āϝ āĻĒā§āϝāĻžāĻā§āĻ āĻ āϞāĻžāĻāĻŦā§āϰā§āϰāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻžāĻ āĻ
āύā§āĻ āϏāĻšāĻ āĻ āĻĻā§āϰā§āϤ āĻāϰāĻž āϝāĻžāϝāĻŧāĨ¤
āĻāĻŽāĻŋāĻāύāĻŋāĻāĻŋ āϏāĻžāĻĒā§āϰā§āĻ
āĻŦāĻŋāĻļā§āĻŦāĻŦā§āϝāĻžāĻĒā§ āĻŦāĻŋāĻļāĻžāϞ āĻĄā§āĻā§āϞāĻĒāĻžāϰ āĻāĻŽāĻŋāĻāύāĻŋāĻāĻŋ āĻĨāĻžāĻāĻžāϰ āĻĢāϞ⧠āϏāĻŽāϏā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ āĻ āύāϤā§āύ āĻĢāĻŋāĻāĻžāϰ āĻļāĻŋāĻāϤ⧠āϏā§āĻŦāĻŋāϧāĻž āĻšāϝāĻŧāĨ¤
đšExpress āĻ Node.js āĻĻāĻŋāϝāĻŧā§ āĻāĻĒāύāĻŋ āĻā§ āĻā§ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ?
RESTful APIs
āϰāĻŋāϝāĻŧā§āϞ-āĻāĻžāĻāĻŽ āĻā§āϝāĻžāĻ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ
āĻ-āĻāĻŽāĻžāϰā§āϏ āĻāϝāĻŧā§āĻŦāϏāĻžāĻāĻ
āĻŽāĻžāĻāĻā§āϰā§āϏāĻžāϰā§āĻāĻŋāϏā§āϏ
āĻŽā§āĻŦāĻžāĻāϞ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύā§āϰ āĻŦā§āϝāĻžāĻāĻāύā§āĻĄ
āĻāĻŦāĻ āĻāϰāĻ āĻ
āύā§āĻ āĻāĻŋāĻā§!
đšNode.js āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§?
Node.js āĻšāϞ⧠āĻāĻžāĻāĻžāϏā§āĻā§āϰāĻŋāĻĒā§āĻ āϰāĻžāύāĻāĻžāĻāĻŽ āϝāĻž āĻŦā§āϰāĻžāĻāĻāĻžāϰā§āϰ āĻŦāĻžāĻāϰ⧠āϏāĻžāϰā§āĻāĻžāϰ⧠āĻāĻžāĻāĻžāϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāĻžāϞāĻžāύā§āϰ āϏā§āϝā§āĻ āĻĻā§āϝāĻŧāĨ¤ āĻāĻāĻž āĻāĻā§āύā§āĻ-āĻĄā§āϰāĻŋāĻā§āύ (event-driven) āĻāĻŦāĻ āύāύ-āĻŦā§āϞāĻāĻŋāĻ (non-blocking I/O) āĻŽāĻĄā§āϞ⧠āĻāĻžāĻ āĻāϰā§āĨ¤
āĻāĻā§āύā§āĻ-āĻĄā§āϰāĻŋāĻā§āύ āĻŽāĻžāύā§?
Node.js āϏāĻžāϰā§āĻāĻžāϰ āĻā§āύ⧠āĻāĻžāĻ āĻļā§āώ āύāĻž āĻšāĻāϝāĻŧāĻž āĻĒāϰā§āϝāύā§āϤ āĻ
āĻĒā§āĻā§āώāĻž āĻāϰ⧠āύāĻžāĨ¤ āϝāĻāύ āĻā§āύ⧠āĻāĻā§āύā§āĻ (āϝā§āĻŽāύ āĻāĻāĻāĻžāϰā§āϰ āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ) āĻāϏā§, āϤāĻāύ āϏā§āĻāĻžāĻā§ āĻšā§āϝāĻžāύā§āĻĄā§āϞ āĻāϰ⧠āĻāĻŦāĻ āĻ
āύā§āϝ āĻāĻžāĻ āĻāĻžāϞāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤
āύāύ-āĻŦā§āϞāĻāĻŋāĻ I/O āĻŽāĻžāύā§?
āĻĄāĻžāĻāĻžāĻŦā§āϏ āĻŦāĻž āĻĢāĻžāĻāϞ āĻĨā§āĻā§ āĻĄā§āĻāĻž āĻāύāĻžāϰ āϏāĻŽāϝāĻŧ āϏāĻžāϰā§āĻāĻžāϰ āĻ
āĻĒā§āĻā§āώāĻž āĻāϰ⧠āύāĻžāĨ¤ āĻŦāϰāĻ āĻ
āύā§āϝ āĻāĻžāĻ āĻāϰ⧠āϝāĻžāϝāĻŧ āĻāĻŦāĻ āĻĄā§āĻāĻž āĻĒāĻžāĻāϝāĻŧāĻž āĻŽāĻžāϤā§āϰ āϏā§āĻāĻžāĻā§ āĻĒā§āϰā§āϏā§āϏ āĻāϰā§āĨ¤
āĻ āĻāĻžāϰāĻŖā§āĻ Node.js āĻ
āύā§āĻ āĻĻā§āϰā§āϤ āĻāĻŦāĻ āϏā§āĻā§āϞā§āĻŦāϞ āĻšāϝāĻŧāĨ¤
đš Express.js āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§?
Express āĻšāϞ⧠Node.js āĻāϰ āĻāĻĒāϰ⧠āϤā§āϰāĻŋ āĻāĻāĻāĻž āĻĢā§āϰā§āĻŽāĻāϝāĻŧāĻžāϰā§āĻāĨ¤ āĻāĻāĻž Node.js āĻā§ āϏāĻšāĻā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āĻāύā§āϝ āĻ
āύā§āĻ āĻāĻāĻāĻŋāϞāĻŋāĻāĻŋ āĻĻā§āϝāĻŧ, āĻŦāĻŋāĻļā§āώ āĻāϰā§:
āϰāĻžāĻāĻāĻŋāĻ (Routing):
āĻāĻĒāύāĻŋ āϝāĻāύ āĻā§āύ⧠URL āĻ āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āĻĻā§āύ (āϝā§āĻŽāύ /home āĻŦāĻž /user), Express āĻ āĻŋāĻ āĻāϰ⧠āĻā§āύ āĻĢāĻžāĻāĻļāύ āϏā§āĻāĻž āĻšā§āϝāĻžāύā§āĻĄā§āϞ āĻāϰāĻŦā§āĨ¤
āĻŽāĻŋāĻĄāϞāĻāϝāĻŧā§āϝāĻžāϰ (Middleware):
Express-āĻ âāĻŽāĻŋāĻĄāϞāĻāϝāĻŧā§āϝāĻžāϰâ āĻšāϞ⧠āĻāĻŽāύ āĻĢāĻžāĻāĻļāύ āϝāĻž āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āĻāϏāĻžāϰ āĻĒāϰ āĻĄā§āĻāĻž āĻĒā§āϰā§āϏā§āϏ āĻāϰ⧠āĻŦāĻž āĻĒāϰāĻŦāϰā§āϤ⧠āĻāĻžāĻā§āϰ āĻāύā§āϝ āĻĒā§āϰāϏā§āϤā§āϤ āĻāϰā§āĨ¤ āϝā§āĻŽāύ, āĻāĻāĻāĻžāϰ āĻ
āĻĨā§āύāĻāĻŋāĻā§āĻļāύ āĻā§āĻ āĻāϰāĻž, āϞāĻ āĻāϰāĻž, āĻŦāĻž āĻĄā§āĻāĻž āĻĢāϰāĻŽā§āϝāĻžāĻ āĻ āĻŋāĻ āĻāϰāĻžāĨ¤
đš Express & Node.js āĻāϰ āĻāĻžāĻā§āϰ āĻĒā§āϰāĻŦāĻžāĻš:
ā§§. āĻāĻāĻāĻžāϰ āĻŦā§āϰāĻžāĻāĻāĻžāϰ āĻĨā§āĻā§ āĻā§āύ⧠āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āĻĒāĻžāĻ āĻžāϝāĻŧ (āϝā§āĻŽāύ www.example.com/login)
⧍. Node.js āϏāĻžāϰā§āĻāĻžāϰ āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āĻā§āϰāĻšāĻŖ āĻāϰā§
ā§Š. Express āϏā§āĻ āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻā§āϰ URL āĻĻā§āĻā§ āύāĻŋāϰā§āϧāĻžāϰāĻŖ āĻāϰ⧠āĻā§āύ āϰāĻžāĻāĻ āĻšā§āϝāĻžāύā§āĻĄāϞāĻžāϰ āĻāĻžāϞāĻžāϤ⧠āĻšāĻŦā§
ā§Ē. āϰāĻžāĻāĻ āĻšā§āϝāĻžāύā§āĻĄāϞāĻžāϰ āĻĄā§āĻāĻžāĻŦā§āϏ āĻĨā§āĻā§ āĻĄā§āĻāĻž āύāĻŋāϝāĻŧā§ āĻāϏ⧠āĻŦāĻž āĻ
āύā§āϝ āĻāĻžāĻ āĻāϰā§
ā§Ģ. āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ āĻŽāĻŋāĻĄāϞāĻāϝāĻŧā§āϝāĻžāϰ āĻĢāĻžāĻāĻļāύāĻā§āϞ⧠āĻāĻžāĻ āĻāϰ⧠(āϝā§āĻŽāύ āĻ
āĻĨā§āύāĻāĻŋāĻā§āĻļāύ āĻā§āĻ āĻāϰāĻž)
ā§Ŧ. āϤāĻžāϰāĻĒāϰ āϏāĻžāϰā§āĻāĻžāϰ āϰā§āϏāĻĒāύā§āϏ (āϝā§āĻŽāύ JSON āĻĄā§āĻāĻž āĻŦāĻž HTML āĻĒā§āĻ) āĻāĻāĻāĻžāϰā§āϰ āĻŦā§āϰāĻžāĻāĻāĻžāϰ⧠āĻĒāĻžāĻ āĻžāϝāĻŧ
ā§. āĻāĻāĻāĻžāϰ āĻŦā§āϰāĻžāĻāĻāĻžāϰ āϰā§āϏāĻĒāύā§āϏ āĻĻā§āĻā§ āĻāĻŦāĻ āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ āĻāĻžāĻ āĻāϰā§
đ āĻļā§āĻāĻžāϰ āĻāύā§āϝ āϰāĻŋāϏā§āϰā§āϏ:
āĻ
āĻĢāĻŋāϏāĻŋāϝāĻŧāĻžāϞ āĻĄāĻā§āĻŽā§āύā§āĻā§āĻļāύ: Node.js | Express.js
āĻĢā§āϰāĻŋ āĻā§āϰā§āϏ āĻ āĻāĻŋāĻāĻā§āϰāĻŋāϝāĻŧāĻžāϞ āĻāĻāĻāĻŋāĻāĻŦā§ āĻĒāĻžāĻāϝāĻŧāĻž āϝāĻžāĻŦā§
āĻĒā§āϰāĻā§āĻā§āĻ āĻŦā§āĻāĻāĻĄ āϞāĻžāϰā§āύāĻŋāĻ āĻāϰā§āύ āĻŦāĻžāϏā§āϤāĻŦ āĻ
āĻāĻŋāĻā§āĻāϤāĻžāϰ āĻāύā§āϝ