详解利用 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 写类方式之九
Jul 05 Javascript
javascript面向对象的方式实现的弹出层效果代码
Jan 28 Javascript
在chrome中window.onload事件的一些问题
Mar 01 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
Apr 01 Javascript
JS实现图片预加载无需等待
Dec 21 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 Javascript
JS实现鼠标框选效果完整实例
Jun 20 Javascript
jQuery获取同级元素的简单代码
Jul 09 Javascript
再谈Javascript中的异步以及如何异步
Aug 19 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
Jun 12 Javascript
JavaScript 替换所有匹配内容及正则替换方法
Feb 12 Javascript
WebWorker 封装 JavaScript 沙箱详情
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
[FAQ]PHP中的一些常识:类篇
2006/10/09 PHP
php从文件夹随机读取文件的方法
2015/06/01 PHP
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
基于jQuery的左右滚动实现代码
2010/12/03 Javascript
Javascript学习笔记一 之 数据类型
2010/12/15 Javascript
JS弹出窗口代码大全(详细整理)
2012/12/21 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
用jquery生成二级菜单的实例代码
2013/06/24 Javascript
JS实现不规则TAB选项卡效果代码
2015/09/16 Javascript
Javascript删除指定元素节点的方法
2016/06/21 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
360doc网站不登录就无法复制内容的解决方法
2018/01/27 Javascript
实现vuex与组件data之间的数据同步更新方式
2019/11/12 Javascript
解决vuecli3中img src 的引入问题
2020/08/04 Javascript
jQuery实现简单轮播图效果
2020/12/27 jQuery
Python编程中time模块的一些关键用法解析
2016/01/19 Python
Python使用PDFMiner解析PDF代码实例
2017/03/27 Python
python下setuptools的安装详解及No module named setuptools的解决方法
2017/07/06 Python
Python 实现删除某路径下文件及文件夹的实例讲解
2018/04/24 Python
解决python中使用plot画图,图不显示的问题
2018/07/04 Python
Django 登陆验证码和中间件的实现
2018/08/17 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
python多线程分块读取文件
2019/08/29 Python
Python3爬虫里关于代理的设置总结
2020/07/30 Python
浅析python函数式编程
2020/09/26 Python
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
HelloFresh澳大利亚:订购你的美味食品盒、健康餐食
2018/03/28 全球购物
家得宝官网:The Home Depot(全球最大的家居装饰专业零售商)
2018/12/17 全球购物
西雅图的买手店:Totokaelo
2019/10/19 全球购物
文秘专业个人求职信
2013/12/22 职场文书
大学生优秀自荐信范文
2014/02/25 职场文书
教师反腐倡廉演讲稿
2014/09/03 职场文书
买卖合同纠纷代理词
2015/05/25 职场文书
OpenCV-Python实现油画效果的实例
2021/06/08 Python