专栏首页十月梦想node实现静态资源目录(根目录)

node实现静态资源目录(根目录)

前面也讲述了,nodejs没有web容器,访问使用/filename是无法访问文件的,需要通过路由判断然后fs.readFile读取文件才可以!

项目作用,设置一个目录当做静态资源的根目录,类似于Apache的根目录,可以使用/filename访问,不存在文件反馈404页面!

案例代码:

/作业解析,使用readfile实现静态页面访问(雷同于Apache根目录);
const http=require("http");
const url=require("url");
const fs=require("fs");
const path=require("path");
const server=http.createServer(function(req,res){
//    不管用户输入什么网址,得到结果一样
//    获取用户的url网址,pathname(路径部分,不包括查询)
    var pathname=url.parse(req.url).pathname;
//    判断用户输入的url是一个文件还是文件夹,文件夹的情况自动追加文件夹下的index.html文件
    if(pathname.indexOf(".")==-1){
        //不存在.则表示访问的是文件夹,后面追加/index.html
        pathname+="/index.html"
    }
//    获取请求的资源路径(页面内包含引用资源,调取什么的不是直接关系的文件)
//    path.normalize格式化请求路径(请求的文件追加在static

总结:indexOf()判断字符是否存在,JSON.parse(data)转为data类型,重要的是回调的嵌套!判断出对应的mime类型可以对应类型显示!mime类型不正确,则请求资源不存在

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • switch选择语句

    十月梦想
  • node模块之url模块初始

    url模块初始:url是node提供的网址服务的一个模块!使用可以快速进行相对应的模块分析!

    十月梦想
  • JavaScript类型数字相关操作

    进制转换操作:默认转换为10进制数         八进制数0开头表示         无效的情况下默认十进制,去掉前导0         十六进制0x开头

    十月梦想
  • 《Drools7.0.0.Final规则引擎教程》第4章 4.1 规则文件

    一个标准的规则文件的格式为已“.drl”结尾的文本文件,因此可以通过记事本工具进行编辑。规则放置于规则文件当中,一个规则文件可以放置多条规则。在规则文件当中也可...

    用户1161110
  • VUE 过滤输入框中的特殊字符 只保存中文、英文及数字

    heasy3
  • LAMMPS中的输出命令(八)

    在前面的介绍中,我们依次介绍了LAMMPS创建模型,力场与势函数,变量命令以及操作fix命令和计算compute命令。在完成这些命令的设置之后,最终得到的计算结...

    DanielZhang
  • 【Python爬虫】120行代码爬取豆瓣电影,附源码

    学习爬虫,拿豆瓣电影进行练手,无奈豆瓣电影存在反爬机制,爬完250就会重定向要求我进行登陆操作,所以我这一次只爬取前50进行相关测试,废话不多说,我们来看下源代...

    python学习教程
  • 微信公众号开发之公众号

    微信极速开发系列文章:http://www.jianshu.com/p/a172a1b69fdd

    Javen
  • 计算机基础系列:源代码如何被计算机执行

    现在各行各业的朋友都开始使用计算机解决自己的业务问题,网络上有大量的免费公开课,教我们处理数据并数学建模。Python等编程语言上手快,开源软件多,足以应付绝大...

    PP鲁
  • 【案例】恒丰银行——运营风险监测系统

    数据猿导读 在当前金融大背景下,我国商业银行正处于大幅调整阶段,面临不确定、不稳定因素正在不断增加,监管机构与公众日益认识到运营风险正成为金融机构面临的最大威胁...

    数据猿

扫码关注云+社区

领取腾讯云代金券