详解利用 Express 托管静态文件的方法


Posted in Javascript onSeptember 18, 2017

通过 Express 内置的 express.static 可以方便地托管静态文件,例如图片、CSS、JavaScript 文件等。

将静态资源文件所在的目录作为参数传递给 express.static 中间件就可以提供静态资源文件的访问了。例如,假设在 public 目录放置了图片、CSS 和 JavaScript 文件,你就可以:

app.use(express.static('public'));

现在,public 目录下面的文件就可以访问了。

http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html

所有文件的路径都是相对于存放目录的,因此,存放静态文件的目录名不会出现在 URL 中。

如果你的静态资源存放在多个目录下面,你可以多次调用 express.static 中间件:

app.use(express.static('public'));
app.use(express.static('files'));

访问静态资源文件时,express.static 中间件会根据目录添加的顺序查找所需的文件。

如果你希望所有通过 express.static 访问的文件都存放在一个“虚拟(virtual)”目录(即目录根本不存在)下面,可以通过为静态资源目录指定一个挂载路径的方式来实现,如下所示:

app.use('/static', express.static('public'));

现在,你就爱可以通过带有 “/static” 前缀的地址来访问 public 目录下面的文件了。

http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 数组循环引起的思考
Jan 01 Javascript
js 获取子节点函数 (兼容FF与IE)
Apr 18 Javascript
JavaScript与Div对层定位和移动获得坐标的实现代码
Sep 08 Javascript
js中Math之random,round,ceil,floor的用法总结
Dec 26 Javascript
jQuery简单图表peity.js使用示例
May 02 Javascript
如何用JS判断两个数字的大小
Jul 21 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
Aug 05 Javascript
bootstrap手风琴制作方法详解
Jan 11 Javascript
Vue学习之路之登录注册实例代码
Jul 06 Javascript
jQuery中each循环的跳出和结束实例
Aug 16 jQuery
vue计算属性及使用详解
Apr 02 Javascript
Vue请求JSON Server服务器数据的实现方法
Nov 02 Javascript
Express使用html模板的详细代码
Sep 18 #Javascript
Mongoose中document与object的区别示例详解
Sep 18 #Javascript
新手vue构建单页面应用实例代码
Sep 18 #Javascript
angularjs路由传值$routeParams详解
Sep 05 #Javascript
vue-ajax小封装实例
Sep 18 #Javascript
信息滚动效果的实例讲解
Sep 18 #Javascript
彻底搞懂JavaScript中的apply和call方法(必看)
Sep 18 #Javascript
You might like
收音机发烧友应当熟知的100条知识
2021/03/02 无线电
ftp类(myftp.php)
2006/10/09 PHP
php文件上传表单摘自drupal的代码
2011/02/15 PHP
PHP操作MongoDB时的整数问题及对策说明
2011/05/02 PHP
php实现mysql数据库分表分段备份
2015/06/18 PHP
javascript 节点排序 2
2011/01/31 Javascript
passwordStrength 基于jquery的密码强度检测代码使用介绍
2011/10/08 Javascript
Javascript实现滚动图片新闻的实例代码
2013/11/27 Javascript
JS动态增加删除UL节点LI及相关内容示例
2014/05/21 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
2016/11/15 Javascript
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
2017/05/11 Javascript
JS尾递归的实现方法及代码优化技巧
2019/01/19 Javascript
深入学习JavaScript 高阶函数
2019/06/11 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
2020/04/06 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
[02:48]DOTA2英雄基础教程 暗夜魔王
2013/12/12 DOTA
Python中针对函数处理的特殊方法
2014/03/06 Python
Django实现简单分页功能的方法详解
2017/12/05 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
pytorch GAN伪造手写体mnist数据集方式
2020/01/10 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
美国专营婴幼儿用品的购物网站:buybuy BABY
2017/01/01 全球购物
澳大利亚旅游网站:Lastminute
2017/08/07 全球购物
美体小铺奥地利官方网站:The Body Shop奥地利
2019/04/11 全球购物
Piercing Pagoda官网:耳环、戒指、项链、手链等
2020/09/28 全球购物
沙特阿拉伯排名第一的在线时尚购物应用程序:1Zillion
2020/08/08 全球购物
当x.equals(y)等于true时,x.hashCode()与y.hashCode()可以不相等,这句话对不对
2015/05/02 面试题
个人自我评价和职业目标
2014/01/24 职场文书
工资收入证明样本(5篇)
2014/09/16 职场文书
面试自我评价范文
2014/09/17 职场文书
人民检察院起诉书
2015/05/20 职场文书
2016年度师德标兵先进事迹材料
2016/02/26 职场文书
读《茶花女》有感:山茶花的盛开与凋零
2020/01/17 职场文书
对讲机的最大通讯距离是多少
2022/02/18 无线电