nodejs使用http和fs模块访问静态资源文件

nodejs使用http和fs模块访问静态资源文件

nodejs中访问静态资源文件,百度上大多数资料都是说,是因为node无法判断访问的文件是什么,所以需要一个个的设置contentType。这种方法我感觉有点治标不治本。归根究底还是需要告诉node,需要访问的文件在哪里,然后通过readFile这个方法转化。

好了那现在直接说方法,以及粘贴代码吧!

  1. 入口文件index.js
let http=require('http');
let fs=require('fs');
http.createServer(function(req,res){
   if(req.url === "/test"){
       fs.readFile('./test.html',function (err,data) {
           res.end(data);
       })
   }else if(req.url==="/kk"){
   /*解释上面为啥指标不治本,像这种情况,res.end里面直接访问图片,返回image/jpg还是text/html呢*/
       res.writeHead(200,{"Content-Type":"text/html"});
       res.end("");
   } else if(req.url.startsWith("/uploads")){
       let filepath=__dirname+req.url;
       fs.readFile(filepath,function (err,data) {
           res.end(data);
       });
   }
}).listen(3000)
  1. 测试文件test.html



   
   Title





  1. 目录文件
    nodejs使用http和fs模块访问静态资源文件_第1张图片
  2. 访问成功
    nodejs使用http和fs模块访问静态资源文件_第2张图片
    nodejs使用http和fs模块访问静态资源文件_第3张图片
    这里只是作为个人笔记记录整理出来,如解释有误,记得留言回复哦!

你可能感兴趣的:(nodejs)