node实现静态资源目录(根目录)
时间:2022-06-08
本文章向大家介绍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类型不正确,则请求资源不存在
- Hibernate_day03总结
- 服务器进程异常的原因分析(第二篇)(r8笔记第16天)
- 最近处理的几个小问题_20160311 (r8笔记第35天)
- Hibernate_day02总结
- Hibernate_day01总结
- ADG备库批量查询失败的原因分析(r8笔记第33天)
- 通过外部表改进一个繁琐的大查询 (r8笔记第32天)
- 一个简单的bigfile tablespace无法扩展的案例处理 (r8笔记第31天)
- 测试环境的迁移式升级和数据整合(r8笔记第27天)
- 增量数据丢失的原因分析(r8笔记第26天)
- Java全栈开发Spring学习第三天
- 一个oracle bug的简单验证(r8笔记第45天)
- 批量导出csv文件的基本尝试(r8笔记第44天)
- Golang 中的并发限制与超时控制
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- R海拾遗-单项重复测量方差分析
- R海拾遗-双因素重复测量方差分析
- 小白秒变大神--windows窗口+装B神器大全 两部曲
- R海拾遗-三因素重复
- 推荐一种简单的在Flutter中分离View与Model的方法
- R海拾遗-tidyverse
- Flutter Hooks 使用及原理
- ggplot2_总纲
- 聊聊怎样学习Binder
- ggplot2_散点图
- 你真的理解Binder“一次拷贝“吗?
- ggplot2_boxplot
- ggplot_Violin Plot & dot plot
- 只要网速够快,小视频看完一个删一个,任性!Python爬取小视频
- ggplot barplot and error bars