OurJS


OurJS-我们的JS, 我们的技术-IT文摘; 专注JS相关领域;
我们热爱编程, 我们热爱技术;我们是高大上, 有品味的码农;

欢迎您订阅我们的技术周刊


我们会向您分享我们精心收集整理的,最新的行业资讯,技术动态,外文翻译,热点文章;
我们使用第三方邮件列表向您推送,我们不保存您的任何个人资料,注重您的隐私,您可以随时退订,

欢迎分享您的观点,经验,技巧,心得

让我们一起找寻程序员的快乐,探索技术, 发现IT人生的乐趣;


本网站使用缓存技术每次加载仅需很小流量, 可在手机中流畅浏览;
如果您发现任何BUG,请即时告知我们: ourjs(at)ourjs.com

OnceIO(Node.JS)的静态文件路由(app.static)


分享到
分类 大话编程   关键字 分享   发布 ourjs  1478163742977
注意 转载须保留原文链接,译文链接,作者译者等信息。  

OnceIO是OnceDoc企业内容(网盘)系统的底层Web框架,它可以实现模板文件、静态文件的全缓存,运行起来完全不需要I/O操作,并且支持客户端缓存优化,GZIP压缩等(只在第一次压缩),拥有非常好的性能,为您节约服务器成本。它可以让你对Web进行分布式存储,即一个扩展包里即可包含前端、后端和数据库定义,只需通过添加/删除目录的方式就可实现功能删减,实现真正的模块化扩展。这里是介绍如何使用OnceIO的一系列文章。

 

为了提供静态资源,比如图像、CSS 文件和 JavaScript 文件等,可以将这些资源放在专门的文件夹中,然后用 app.static('folder') 将文件夹设置为 static 模式,使其中的资源可以直接被提供,而不参与中间件、Handler、会话、POST 和 Cookie,以达到节约带宽、减少延迟和降低服务器压力的目的。示例代码如下:

app.static('css')
app.static('js')
app.static('img')
app.static('icon')
app.static('fonts')
app.static('/*/css')
app.static('/*/js')
app.static('/*/img')
app.static('/*/icon')
app.static('/*/fonts')

 

app.static() 效果演示

以下示例代码对根文件夹使用了 app.static(),因此在默认端口访问 localhost 时,中间件和 Handler 将不被执行:(app.static('/') 在此处仅作为示例使用,实际应用中,为避免本应执行的中间件、Handler 被跳过等问题,app.static() 的参数通常不会是根文件夹,而是专门存放静态资源的文件夹,如 '/css'、'/js'、'/img' 等)

app.static('/')

app.use(function(req, res) {
  console.log('MIDDLEWARE')
  req.filter.next()
})

app.get('/', function(req, res) {
  res.send('HANDLER')
}

运行服务器,在默认端口访问 localhost,浏览器显示 “Access forbidden!”,console 窗口效果如下:

 static  console

如果去掉 app.static('/'),进行相同操作,浏览器显示 “HANDLER”,console 窗口效果如下:

 static  console

 

 

 OnceIO地址:  https://github.com/OnceDoc/onceio

 

上一篇: OnceIO(Node.JS)的路由(Routing)、路由方法和路由变量

下一篇:OnceIO(Node.JS)中安装、使用和更换doT、EJS、pug等模板引擎

原文地址: 点此
社区评论 ( Beta版 )
OnceDoc 您自己的企业内容管理系统——文档、流程、知识库、报表、网盘All In One

访问404页面,寻找丢失儿童
 热门文章 - 分享最多
  1. 阿里任性Hr开除月饼极客:这样冰冷的公司没什么值得我留恋
  2. GitHub2016报告AngularJS流行度下降,JavaScript活跃度为Java两倍
  3. 在 2016 年学 JavaScript 是一种什么样的体验?
  4. 2016年收入最高的5个编程语言,JavaScript最流行,Java和C没在前5
  5. 传言GITHUB正在寻求第二轮融资,或面临估值下降、清算或被微软收购
  6. JavaScript函数式编程(一、二、三)
  7. Java 之父求职被嫌年纪大,硅谷公司现在喜欢“小鲜肉”,不爱“老古董”
  8. NodeJS中的Middleware是什么?在OnceIO中创建和使用中间件
  9. OnceIO(Node.JS)中的模板引擎是什么及MVC设计模式的使用与实现
  10. 用OnceIO(NodeJS)搭建简单的web服务器
  11. AirJD-简单好用的免费建站工具

 相关阅读 - 大话编程
  1. 乌云和漏洞盒子停业整顿—可能与国内“白帽子”黑客圈高度关注的“袁炜事件”有关
  2. 如日中天的Uber究竟使用什么开发语言?
  3. 微软降低OneDrive的免费存储空间容量,个人云存储热度减退
  4. 一个程序员是如何搞挂NPM和Node社区的
  5. 程序bug导致了天大的损失,要枪毙程序猿吗?
  6. NodeJS初学者教程:Node.js之HTTP
  7. 谷歌人工智能AlphaGo挑战人类围棋冠军
  8. 美国程序员低价雇中国人替其编程被解雇
  9. 关于App程序员泡沫
  10. IBM宣布向Node.js基金会捐赠Express Framework

 关键字 - 分享
  1. 开发者在增加移动APP收益时必须做的5件事
  2. D3.js可视化库入门视频教程
  3. DevExpress最强干货|实用示例、更新等你来体验!
  4. 微软发布了一系列网络安全新功能(关于Windows和Office 365)
  5. parasoft Jtest 使用教程:RuleWizard与BugDetective静态分析
  6. Node.js入门系列视频教程
  7. 简单三步教你利用VMProtect轻松保护你的代码
  8. MFC界面库BCGControlBar v25.1新版亮点二:资源管理器样式工具栏等
  9. parasoft Jtest 使用教程:Windows单机和插件安装
  10. 全球最火的R工具包一网打尽,超过300+工具,立马收藏!

 欢迎订阅 - 技术周刊

我们热爱编程, 我们热爱技术; 我们是高端, 大气, 上档次, 有品味, 时刻需要和国际接轨的码农; 欢迎您订阅我们的技术周刊; 您只需要在右上角输入您的邮箱即可; 我们注重您的隐私,您可以随时退订.
加入我们吧! 让我们一起找寻码农的快乐,探索技术, 发现IT人生的乐趣;


 关注我们

我们的微信公众号: ourjs-com
打开微信扫一扫即可关注我们:
IT文摘-程序员(码农)技术周刊

ourjs官方微信号