详解利用 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 相关文章推荐
bgsound 背景音乐 的一些常用方法及特殊用法小结
May 11 Javascript
jQuery1.6 使用方法二
Nov 23 Javascript
基于jQuery的图片不完全按比例自动缩小
Jul 11 Javascript
node.js中的console.log方法使用说明
Dec 09 Javascript
详解AngularJS中的依赖注入机制
Jun 17 Javascript
js+html5操作sqlite数据库的方法
Feb 02 Javascript
JS组件Bootstrap导航条使用方法详解
Apr 29 Javascript
node.js中 stream使用教程
Aug 28 Javascript
js实现适合新闻类图片的轮播效果
Feb 05 Javascript
webpack打包单页面如何引用的js
Jun 07 Javascript
BootStrap入门学习第一篇
Aug 28 Javascript
详解如何快速配置webpack多入口脚手架
Dec 28 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 判断常量,变量和函数是否存在
2009/04/26 PHP
php selectradio和checkbox默认选择的实现方法详解
2013/06/29 PHP
Yii中srbac权限扩展模块工作原理与用法分析
2016/07/14 PHP
Javascript之文件操作
2007/03/07 Javascript
JavaScript 格式字符串的应用
2010/03/29 Javascript
javascript之AJAX框架使用说明
2010/04/24 Javascript
基于NodeJS的前后端分离的思考与实践(五)多终端适配
2014/09/26 NodeJs
纯js代码实现未知宽高的元素在指定元素中垂直水平居中显示
2015/09/12 Javascript
vue插件vue-resource的使用笔记(小结)
2017/08/04 Javascript
原生JavaScript来实现对dom元素class的操作方法(推荐)
2017/08/16 Javascript
angular动态表单制作
2018/02/23 Javascript
Vue项目中跨域问题解决方案
2018/06/05 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python编写暴力破解FTP密码小工具
2014/11/19 Python
Python线程详解
2015/06/24 Python
Python实现模拟登录及表单提交的方法
2015/07/25 Python
TensorFlow变量管理详解
2018/03/10 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
python爬虫 正则表达式解析
2019/09/28 Python
python动态文本进度条的实例代码
2020/01/22 Python
python 写一个性能测试工具(一)
2020/10/24 Python
python中的yield from语法快速学习
2020/11/06 Python
Html5让容器充满屏幕高度或自适应剩余高度的布局实现
2020/05/14 HTML / CSS
高街生活方式全球在线商店:AZBRO
2017/08/26 全球购物
马德里竞技官方网上商店:Atletico Madrid Shop
2019/03/31 全球购物
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
毕业学生推荐信
2013/12/01 职场文书
自我反省检讨书
2014/01/23 职场文书
2014年党的群众路线活动个人整改措施
2014/10/28 职场文书
公务员年终个人总结
2015/02/12 职场文书
新教师教学工作总结
2015/08/12 职场文书
如何用JS实现网页瀑布流布局
2021/04/24 Javascript
基于MySql验证的vsftpd虚拟用户
2021/11/07 MySQL