1 /** 2 * 创建一个服务 3 * GET /index.html 响应当前目录下 public 目录中 index.html 文件内容 4 * GET /css/app.css 响应当前目录下 public 目录中 css/app.css 文件内容 5 * GET /js/app.js 响应当前目录下 public 目录中 js/app.js 文件内容 6 */ 7 8 //获取fs文件模块 9 const fs= require(‘fs‘); 10 //获取将请求的url模块 11 12 const urltool= require(‘url‘); 13 14 //创建服务 15 require(‘http‘).createServer((request, response)=>{ 16 // 获取请求方式 17 let method= request.method.toUpperCase(); 18 //获取url路径 19 let pathname= urltool.parse(request.url).pathname; 20 // 看我打印结果 21 console.log(pathname) 22 // /css/app.css拿着这个路径进入下面判断 23 //判断请求方式和路径 /public/css/app.css 不满足条件, 24 // 所有条件都不满足.也就是都没有进入任何一个判断,没进入判断,就没有相应内容,外面就会一直在等待 25 // 这样的话自然就读不到内容 26 27 if(method===‘GET‘ && pathname === ‘/index.html‘){ 28 const fd = fs.createReadStream(__dirname+‘\\public\\index.html‘) 29 fd.pipe(response) 30 // fs.readFile(__dirname+‘\\public\\index.html‘, (err, data)=>{ 31 // if(err){ 32 // //返回状态吗 33 // response.statusCode=404; 34 // response.end(‘404‘) 35 // return; 36 // } 37 38 // response.end(data) 39 // }); 40 41 ///css/app.css 42 }else if(method===‘GET‘ && pathname===‘/app.css‘){ 43 const fd = fs.createReadStream(`${__dirname}\\public\\css\\app.css`) 44 fd.pipe(response) 45 // fs.readFile(`${__dirname}\\public\\css\\app.css`, (err, data)=>{ 46 // if(err){ 47 // //返回状态吗 48 // response.statusCode=404; 49 // response.end(‘404‘) 50 // return; 51 // } 52 53 // response.end(data) 54 // }); 55 }else if(method===‘GET‘ && pathname===‘/app.js‘){ 56 //创建读取流 57 const fd = fs.createReadStream(`${__dirname}\\public\\js\\app.js`) 58 fd.pipe(response) 59 // fs.readFile(`${__dirname}\\public\\js\\app.js`, (err,data)=>{ 60 // if(err){ 61 // //返回状态吗 62 // response.statusCode=404; 63 // response.end(‘404‘) 64 // return; 65 // } 66 67 // response.end(data) 68 // }) 69 }else{ 70 response.setHeader(‘Content-type‘,‘text/plain;charset=utf-8‘); 71 response.end(‘你的路径输入不正确‘) 72 } 73 74 75 }).listen(8000, ()=>{ 76 console.log(‘node服务开启了‘) 77 });
原文:https://www.cnblogs.com/fsg6/p/13081903.html