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(‘文件夹路径’, () => {}) // 返回文件夹下的所有文件