// 引用http模块
var http = require(“http”)
// 引用fs模块
var fs = require(‘fs’)
// 引用path模块
var path = require(“path”)
// 引用url模块
var url = require(“url”)
var app = http.createServer(function (req, res) {
console.log(req.url)
// 1.从url地址中取出路径部分
var urlObj = url.parse(req.url)
// 2.在路径前拼接上静态文件名称
var filePath = path.join("./www", urlObj.pathname)
fs.readFile(filePath, function (err, data) {
// 如果读取文件发生了错误,说明要读取的文件不存在
if (err != null) {
// writeHead() 用于设置响应状态码和响应头
// 404 状态码,表示要访问的资源不存在
res.writeHead(404,
{
"Content-Type": "text/html;charset=utf-8"
})
res.end("您访问的页面不存在")
}
//如果存在则进行判断文件类型逻辑
console.log("我是未修正过的文件类型" + path.extname(filePath))
// var extname=path.extname(filePath).replace(".","")
// 判断加载的文件类型
var extname = path.extname(filePath).replace('.', '')
var contentType = ''
// 根据加载的文件类型,设置不同的contentType
console.log("我是修整过的文件类型 " + extname)
switch (extname) {
case "css":
contentType = "text/css;charset=utf-8"
break;
case "png" || "jpg" || "jpeg":
contentType = "image/png;charset=utf-8"
break;
default:
contentType = "text/html;charset=utf-8"
break;
}
res.writeHead(200, {
"Content-Type": contentType
})
// res.end( path.extname(filePath))
res.end(data)
})
})
// 进行服务器监听
app.listen(8080, function () {
console.log(“server runnig…”)
})