zoukankan      html  css  js  c++  java
  • NodeJS之 Express框架 app.use(express.static)

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

    一 、设置静态文件目录

    语法如下:

    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

  • 相关阅读:
    Lab IGMP
    IGMP知识要点
    15、通过例子讲解逻辑地址转换为物理地址的基本过程
    14、一个程序从开始运行到结束的完整过程,你能说出来多少?
    13、进程状态的切换你知道多少?
    12、虚拟技术你了解吗?
    11、动态分区分配算法有哪几种?可以分别说说吗?
    线程池
    10、内存交换和覆盖有什么区别?
    9、如果系统中具有快表后,那么地址的转换过程变成什么样了?
  • 原文地址:https://www.cnblogs.com/slovey/p/9213631.html
Copyright © 2011-2022 走看看