• NodeJS之 Express框架 app.use(express.static)


    一 、设置静态文件目录

    语法如下:

    app.use(express.static(_dirname + '/public'));  //设置静态文件目录

    注: 将静态文件目录设置为项目根目录 + ‘/public’,可以这样写

    app.use(express.static(path.join(_dirname, 'public')));

    运用path模版的join方法效果和前面是等价的。这里需要引用path模块。

    path.join():将多个参数组合成一个 path

    二、静态资源文件和动态资源文件是什么?

    静态资源文件:对于不同的用户,内容都不会变化的文件。比如不管张三还是李四访问百度,他们所看到的图片、css、js文件都是一样的,我们成为静态资源文件;

    动态资源文件: 对于不同用户,做出不同反应的就是动态文件,例如张三李四登陆百度,百度会分别对他们显示“张三,你好”、“李四,你好”,那么负责这些动态逻辑的文件就是动态文件了。

    三、 app.use() 方法的作用

    app.use : 用来给path注册中间函数的。这个path默认是“/”,也就是处理任何请求,同时注意的是他会处理path下的子路径,如果设置path为‘/hello’,那么请求路径为‘/hello/’,'/hello/nihao','/hello/bye'这样的请求都会交给中间函数处理的。

    于是我们现在知道了app.use(express.static(_dirname + '/public'))是将所有请求,先交给express.static(_dirname + '/public')来处理一下。

    四、express.static() 方法的作用

    为了提供对静态资源文件(图片,css,js文件)的服务,请使用Express内置的中间函数express.static.

    传递一个包含静态资源的目录给express.static中间件用于立即开始提供文件。 比如用以下代码来提供public目录下的图片、css文件和js文件:

    app.use(express.static('public'));

    现在可以加载public目录下的文件了:

    比如: http://localhost:3000/image/jkk.png

    通过多次使用 express。static中间件来添加多个静态资源目录:

    app.use(express.static('public'));
    app.use(express.static('file'));

    Express将会按照你设置静态资源目录的顺序来查看静态资源文件。

    为了给静态资源文件创建一个虚拟的文件前缀(文件系统中不存在),可以使用express.static函数指定一个虚拟的静态目录,如下:

    app.use('/static', express.static('public'))

    现在你可以使用‘/static’作为前缀来加载public文件夹下的文件了

    比如: http:// localhost:3000/static/image/kitten.jpg

    参考文档:https://blog.csdn.net/u010977147/article/details/60956502

    http://www.cnblogs.com/slovey/p/9213631.html

  • 相关阅读:
    异步编程案例分享—后台线程事实通知任务进度
    ORACLE 常见错误
    设计模式——工厂模式
    sql 脚本编写之路 常用语句(一)
    C# 深入浅出 异步(八)
    设计模式——单例模式
    Sql Server 学习链接
    SqlServer 常用函数
    2016 ACM/ICPC Asia Regional Shenyang Online
    2016 ACM/ICPC Asia Regional Dalian Online
  • 原文地址:https://www.cnblogs.com/1906859953Lucas/p/9609188.html
Copyright © 2020-2023  润新知