原生Node.js静态资源服务器的大致配置思想
注意:node-模块之间使用common.js规范,注意模块的引入与暴露
思想:静态资源服务器!
- index.js:入口配置文件
---服务器,先起个服务,node内置http.createServer(),记得最后配置一个端口号
---获取浏览器请求的文件路径,http的内置参数(req.res) req.url 例如:/index.html
---获取当前服务器配置文件的绝对路径:用node内置方法__dirname获取当前文件夹绝对路径 ,在指向:拼接上静态资源文件夹的路径;
---上述两个路径用node内置path.join(注意join参数接收两个,是第二个参数拼接在第一个参数后面)进行拼接,及获取到服务器对应文件的绝对路径
---可以使用判断跳过favicon.ico的错误
---调用content.js文件,进行判断
---利用node内置path.extname()获取文件类型,及返回路径最后的文件后缀,如".html",再用slice(1),去掉第一个点;
---拿到文件类型,调用mine文件,查看mine文件中是否存在该文件类型
---不存在返回一个默认类型,存在则取出对应的解析类型 如:text/html
---为res,及向浏览器返回设置传出头,res.setHeader(('Content-Type', 上述返回的解析类型))
---在对解析类型进行判断,若是image,使用res.write(文件数据,'binary')返回浏览器请求的结果,否则直接res.write(文件数据)
- content.js: 控制器
---使用node内置fs.existsSync(路径),判断当前路径是否存在
---fs.statSync(路径),返回值,对象,文件具体详情
---利用上面的返回值stat.isDirectory()判断是否是文件夹类型,在决定调用dir方法,还是file方法
dir.js 读取文件夹(可以返回html标签,并对当前文件返回具体内用)
---使用node内置fs.readdirSync(),读取当前路径下的所有文件夹,文件也当文件夹了,返回值是一个数组对象
---使用数组遍历方法Array.entries(entries() 方法返回一个新的Array Iterator对象,该对象包含数组中每个索引的键/值对。)并用for of方法对其取出value值
- file.js 读取文件
---使用node内置fs.readFileSync(文件路径)读取内容并返回
- mine.js 判断类型使用
你的文章让我心情愉悦,真是太棒了! https://www.4006400989.com/qyvideo/614.html
你的文章充满了智慧,让人敬佩。 https://www.4006400989.com/qyvideo/11425.html
《盲女凶杀案》恐怖片高清在线免费观看:https://www.jgz518.com/xingkong/54000.html
你的文章让我感受到了快乐,每天都要来看一看。 https://www.4006400989.com/qyvideo/26834.html
《天赐情缘》爱情片高清在线免费观看:https://www.jgz518.com/xingkong/93264.html
你的文章让我感受到了无尽的欢乐,谢谢分享。 http://www.55baobei.com/5wxuzng6gy.html
看到你的文章,我仿佛感受到了生活中的美好。 https://www.yonboz.com/video/50748.html
《金玉姬》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/85315.html
怎么收藏这篇文章?