详解利用 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 相关文章推荐
js 禁止选择功能实现代码(兼容IE/Firefox)
Apr 23 Javascript
二叉树的非递归后序遍历算法实例详解
Feb 07 Javascript
单击某一段文字改写文本颜色
Jun 06 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
Jan 13 Javascript
Javascript中prototype的使用详解
Jun 18 Javascript
js重写方法的简单实现
Jul 10 Javascript
Javascript 实现简单计算器实例代码
Oct 23 Javascript
angular实现表单验证及提交功能
Feb 01 Javascript
微信小程序 下拉列表的实现实例代码
Mar 08 Javascript
详解vue表单——小白速看
Apr 08 Javascript
Vue的props父传子的示例代码
May 20 Javascript
js实现圆形菜单选择器
Dec 03 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
php5.2.0内存管理改进
2007/01/22 PHP
php更改目录及子目录下所有的文件后缀扩展名的代码
2010/10/12 PHP
PHP实现批量生成App各种尺寸Logo
2015/03/19 PHP
php获取系统变量方法小结
2015/05/29 PHP
php 类自动载入的方法
2015/06/03 PHP
PHP去除空数组且数组键名重置的讲解
2019/02/28 PHP
php设计模式之单例模式用法经典示例分析
2019/09/20 PHP
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
2012/10/11 Javascript
javascript获取浏览器类型和版本的方法(js获取浏览器版本)
2014/03/13 Javascript
探讨js字符串数组拼接的性能问题
2014/10/11 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
jQuery的 $.ajax防止重复提交的两种方法(推荐)
2016/10/14 Javascript
jQuery实现的粘性滚动导航栏效果实例【附源码下载】
2017/10/19 jQuery
微信小程序radio组件使用详解
2018/01/31 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
Python解释器以及PyCharm的安装教程图文详解
2020/02/26 Python
python中pyqtgraph知识点总结
2021/01/26 Python
Python利用socket模块开发简单的端口扫描工具的实现
2021/01/27 Python
HTML5 Canvas概述
2009/08/26 HTML / CSS
介绍一下游标
2012/01/10 面试题
《骆驼和羊》教学反思
2014/02/27 职场文书
《充气雨衣》教学反思
2014/04/07 职场文书
医院见习报告范文
2014/11/03 职场文书
学术研讨会欢迎词
2015/01/26 职场文书
统计员岗位职责范本
2015/04/14 职场文书
防暑降温通知书
2015/04/27 职场文书