详解利用 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 表单下所有元素的隐藏
Jul 25 Javascript
理解Javascript_10_对象模型
Oct 16 Javascript
select多选 multiple的使用示例
Jun 16 Javascript
node.js解决获取图片真实文件类型的问题
Dec 20 Javascript
JavaScript中对JSON对象的基本操作示例
May 21 Javascript
JS实现刷新父页面不弹出提示框的方法
Jun 22 Javascript
vue中动态绑定表单元素的属性方法
Feb 23 Javascript
JavaScript展开操作符(Spread operator)详解
Jul 20 Javascript
vue实现codemirror代码编辑器中的SQL代码格式化功能
Aug 27 Javascript
vue实现从外部修改组件内部的变量的值
Jul 30 Javascript
在vue中嵌入外部网站的实现
Nov 13 Javascript
深入了解Vue3模板编译原理
Nov 19 Vue.js
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
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
PHP的error_reporting错误级别变量对照表
2014/07/08 PHP
使用PHP uniqid函数生成唯一ID
2015/11/18 PHP
javascript innerText和innerHtml应用
2010/01/28 Javascript
同时使用n个window onload加载实例介绍
2013/04/25 Javascript
在JavaScript中使用timer示例
2014/05/08 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
2015/11/06 Javascript
jqGrid用法汇总(全经典)
2016/06/28 Javascript
轻松掌握JavaScript状态模式
2016/09/07 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
bootstrapValidator.min.js表单验证插件
2017/02/09 Javascript
详解vue跨组件通信的几种方法
2017/06/15 Javascript
Vue.js用法详解
2017/11/13 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
对layui中的onevent 和event的使用详解
2019/09/06 Javascript
js new Date()实例测试
2019/10/31 Javascript
vue页面引入three.js实现3d动画场景操作
2020/08/10 Javascript
nodejs+koa2 实现模仿springMVC框架
2020/10/21 NodeJs
使用Python来编写HTTP服务器的超级指南
2016/02/18 Python
Python学习笔记之解析json的方法分析
2017/04/21 Python
浅谈Python中range和xrange的区别
2017/12/20 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
如何在Django配置文件里配置session链接
2019/08/06 Python
Python文本处理简单易懂方法解析
2019/12/19 Python
python 调整图片亮度的示例
2020/12/03 Python
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
MaBelle玛贝尔香港官网:香港钻饰连锁店
2019/09/09 全球购物
德国在线购买葡萄酒网站:Geile Weine
2019/09/24 全球购物
成人大专自我鉴定范文
2013/10/19 职场文书
工作失职检讨书范文
2014/01/16 职场文书
维护民族团结演讲稿
2014/08/27 职场文书
县政府办公室领导班子个人对照检查材料
2014/09/16 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书