详解利用 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实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
Jun 09 Javascript
javascript获取元素CSS样式代码示例
Nov 28 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
May 19 Javascript
基于jQuery实现表格的查看修改删除
Aug 01 Javascript
JS实现六位字符密码输入器功能
Aug 19 Javascript
Bootstrap jquery.twbsPagination.js动态页码分页实例代码
Feb 20 Javascript
jQuery布局组件EasyUI Layout使用方法详解
Feb 28 Javascript
Require.JS中的几种define定义方式示例
Jun 01 Javascript
vue 将页面公用的头部组件化的方法
Dec 18 Javascript
js常用正则表达式集锦
May 17 Javascript
echarts大屏字体自适应的方法步骤
Jul 12 Javascript
Vue全家桶入门基础教程
May 14 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
php之CodeIgniter学习笔记
2013/06/17 PHP
浅谈php中变量的数据类型判断函数
2017/03/04 PHP
YII框架关联查询操作示例
2019/04/29 PHP
PHP 加密 Password Hashing API基础知识点
2020/03/02 PHP
Java/JS获取flash高宽的具体方法
2013/12/27 Javascript
javascript中sort()的用法实例分析
2015/01/30 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
2015/08/22 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
Jquery-data的三种用法
2017/04/18 jQuery
Node.js自定义实现文件路由功能
2017/09/22 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
vue+swiper实现组件化开发的实例代码
2017/10/26 Javascript
Angular 多级路由实现登录页面跳转(小白教程)
2019/11/19 Javascript
详解为什么Vue中不要用index作为key(diff算法)
2020/04/04 Javascript
在Django的视图(View)外使用Session的方法
2015/07/23 Python
Windows下Python的Django框架环境部署及应用编写入门
2016/03/10 Python
深入学习Python中的上下文管理器与else块
2017/08/27 Python
Python异常处理操作实例详解
2018/08/28 Python
Python 支付整合开发包的实现
2019/01/23 Python
Django框架验证码用法实例分析
2019/05/10 Python
python获取地震信息 微信实时推送
2019/06/18 Python
Python实现Selenium自动化Page模式
2019/07/14 Python
python hashlib加密实现代码
2019/10/17 Python
Mankind西班牙男士护肤品网站:购买皮肤护理、护发和剃须
2017/04/27 全球购物
美国正版电视节目和电影在线观看:Hulu
2018/05/24 全球购物
ALDO美国官网:加拿大女鞋品牌
2018/12/28 全球购物
英国第一摩托车和摩托车越野配件商店:GhostBikes
2019/03/10 全球购物
IdealFit官方网站:女性蛋白质、补充剂和运动服装
2019/03/24 全球购物
全球异乡人的跨境社交电商平台:Kouhigh口嗨网
2020/07/24 全球购物
工作会议欢迎词
2014/01/16 职场文书
高一化学教学反思
2014/02/05 职场文书
村庄绿化方案
2014/05/07 职场文书
学校教师安全责任书
2014/07/23 职场文书
中共广东省委常委会党的群众路线教育实践活动整改方案
2014/09/23 职场文书
决心书格式范文
2015/09/23 职场文书
 Redis 串行生成顺序编码的方法实现
2022/04/03 Redis