详解利用 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 相关文章推荐
jquery插件制作 自增长输入框实现代码
Aug 17 jQuery
jQuery 追加元素的方法如append、prepend、before
Jan 16 Javascript
JQuery实现超链接鼠标提示效果的方法
Jun 10 Javascript
javascript基础知识分享之类与函数化
Feb 13 Javascript
jQuery实现的表头固定效果实例【附完整demo源码下载】
Aug 01 Javascript
jQuery与JavaScript节点创建方法的对比
Nov 18 Javascript
jquery中each循环的简单回滚操作
May 05 jQuery
使用JavaScript实现链表的数据结构的代码
Aug 02 Javascript
值得收藏的vuejs安装教程
Nov 21 Javascript
基于JavaScript中字符串的match与replace方法(详解)
Dec 04 Javascript
深入了解响应式React Native Echarts组件
May 29 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
Oct 16 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
php中的时间处理
2006/10/09 PHP
PHP+DBM的同学录程序(2)
2006/10/09 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
简单谈谈PHP vs Node.js
2015/07/17 PHP
php简单生成随机数的方法
2015/07/30 PHP
php+iframe 实现上传文件功能示例
2020/03/04 PHP
Javascript String.replace的妙用
2009/09/08 Javascript
深入理解JavaScript定时机制
2010/10/29 Javascript
Javascript 页面模板化很多人没有使用过的方法
2012/06/05 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
JQuery 文本框回车跳到下一个文本框示例代码
2013/08/30 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
初步认识JavaScript函数库jQuery
2015/06/18 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
2017/06/16 Javascript
使用Javascript简单计算器
2018/11/17 Javascript
微信小程序点餐系统开发常见问题汇总
2019/08/06 Javascript
[01:03:31]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第二局
2016/02/26 DOTA
Python读取ini文件、操作mysql、发送邮件实例
2015/01/01 Python
通过数据库向Django模型添加字段的示例
2015/07/21 Python
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
Python将列表数据写入文件(txt, csv,excel)
2019/04/03 Python
pyqt实现.ui文件批量转换为对应.py文件脚本
2019/06/19 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
2019/07/14 Python
解决python 读取excel时 日期变成数字并加.0的问题
2019/10/08 Python
Python 异常处理Ⅳ过程图解
2019/10/18 Python
简单了解Django ORM常用字段类型及参数配置
2020/01/07 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
2020/10/29 Python
印度尼西亚最好的小工具在线商店:Erafone.com
2019/03/26 全球购物
写好自荐信的要点
2013/11/06 职场文书
电厂职工自我鉴定
2014/02/20 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
2014各大专业毕业生自我评价
2014/09/17 职场文书
2014年公务员退休工资改革方案
2014/10/01 职场文书
Python 多线程之threading 模块的使用
2021/04/14 Python
5分钟教你docker安装启动redis全教程(全新方式)
2021/05/29 Redis
Python使用pandas导入xlsx格式的excel文件内容操作代码
2022/12/24 Python