node.js好處:
事件驅動,無堵塞i/o模型,輕量高效
基於V8引擎,與前臺配很更好
建立一個基本服務器
const http = require('http')
const fs = require('fs')
const server = http.createServer((req, res) => {
fs.readFile(`www${req.url}`, (err, data) => {
if (err) {
fs.readFile('./http_err/404.html', (err, data) => {
if (err) {
res.writeHeader(404) // 如果沒有找到網頁資源,將http狀態碼改成404
res.write('not found')
} else {
res.writeHeader(404) // 改狀態碼
res.write(data) // 顯示預先準備好的404頁面
}
res.end()
})
} else {
res.write(data)
res.end()
}
})
})
server.listen(8080)
404頁面:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<script>
window.onload = function(){
let t = 5
setInterval(() => {
t--
document.getElementById('time').innerHTML = t
if (t === 0) {
window.location = 'http://www.baidu.com'
}
}, 1000)
}
</script>
<body>
<h1>對不起,您要的頁面無法找到,於<span id="time">5</span>秒後跳轉到首頁</h1>
</body>
</html>
listen(端口號)
listen:等待客戶端鏈接
默認端口號: web:80 、 ssh:22、 ftp:21、 MySQL:3306
fs模塊:讀取目標文件夾內的內容
fs.readFile(‘文件地址’, (err, data) => {}
fs.writeFile(‘文件地址’,“內容”, (err, data) => {} // 向文件寫內容
fs.mkdir(‘文件夾‘) //創建文件夾
fs.stat(‘路徑’, (err, data) => {
console.log(data.isDirectory()) // 判斷是不是文件夾
})
fs.readdir(‘文件夾路徑’, () => {}) // 返回文件夾下的所有文件