สอน Node.js ตอนที่ 7 ใช้ HTTP + FS สร้าง Web Server แบบ Static Webpage

สอน Node.js ตอนที่ 7 ใช้ HTTP + FS สร้าง Web Server แบบ Static Webpage

ลองใช้ http และ fs (File System) ที่เป็น Modules ที่มีมาให้ของ Node.js สร้าง Web Server แบบ Static Web Page

Feb 09, 2018

แก้ไขล่าสุด มีผู้อ่าน 647  |  NODE.JS

ในตอนก่อนหน้านี้ เราได้ลองใช้ http และ fs (File System) ที่เป็น Modules ที่มีมาให้ของ Node.js กันแล้ว สำหรับสร้าง Web Server และจัดการเกี่ยวกับไฟล์ ในตอนนี้เราจะนำทั้งสองมาใช้งานร่วมกันเพื่อสร้าง Web Server แบบ Static Web Page 

 

Static Web Page คือ หน้าเว็บไซต์ที่สร้างด้วย HTML, CSS, Javascript หน้าเว็บไม่มีการเปลี่ยนแปลง เป็นเหมือนเดิมทุกครั้งที่เข้าใช้ชมเนื่องจากไม่มีการเชื่อมต่อฐานข้อมูล Static Web Page ถือเป็นการสร้างเว็บไซต์แบบง่ายที่สุด 

 

การสร้าง Web Server แบบ Static Web Page ทำได้ดังนี้

 


1. สร้างไฟล์หน้าเว็บขึ้นมา 1 ไฟล์ ชื่อ demo.html

 
<html>
<head>
<title>Demo</title>
</head>
<body>
<h1>Demo</h1>
<p>This is demo page.</p>
</body>
</html>
 

 

2. สร้าง Server ด้วย http ต่อมาเมื่อมี req (request) เข้ามาให้อ่านไฟล์ demo.html แล้วส่งข้อมูลที่อ่านได้หลับไปด้วย res (response)

var http = require('http');
var fs = require('fs');
http.createServer(function (req, res) { // สร้าง Web Server
   fs.readFile('demo.html', function (err, data) { // อ่านไฟล์ demo.html 
       res.writeHead(200, { 'Content-Type': 'text/html' });
       res.write(data); // ส่งข้อมูลอ่านมากลับไปด้วย res.write(data)
       res.end();
   });
}).listen(8081);

console.log("Server running at http://127.0.0.1:8081/");

 

เท่านี้เราก็ได้ Web Server แบบ Static Web Page แล้ว แต่จากตัวอย่างไม่ว่าจะเข้ามาผ่าน URL เป็นอะไรก็จะส่งออกไปด้วย demo.html หมด ในตอนต่อไปจะมาลองทำแบบหลายๆ หน้ากันครับ

 


แบ่งปัน

ชอบ +1

บันทึก

ฝากคำถาม คำแนะนำ ได้ที่

Facebook : Share.OlanLab.Com
LINE ID : @olanlab
อีเมล์ : olan@olanlab.com
Share คลังความรู้ด้านเทคโนโลยี สารสนเทศ นวัตกรรมคอมพิวเตอร์ สอนเขียนโปรแกรม Php Java Html CSS Javascript C C++ Objective-C และอื่นๆ บนระบบปฏิบัติการ Window Linux Unix CentOS IOS Android
โดยผู้เขียนที่มีความเชี่ยวชาญเฉพาะ ให้บริการพื้นที่สำหรับนักเขียนที่ต้องการแบ่งปันความรู้ พร้อมให้คำปรึกษาแก่ผู้ที่สนใจ โดยไม่เสียค่าใช้จ่าย