Express中的静态资源服务

2020/01/17 Express Nodejs

Express中可以默认设置一些静态资源服务,这样方便统一资源定位符(url)做出比较简单的定位,既可以简化代码也可以精简url链中的信息内容。

Express启动

首先需要创建一个express对象:

var express = require("express");
var app = express();

静态服务

使用方法是第一个参数是url链访问路径,第二个参数是静态资源的相对路径:

app.usc(args[0], args[1]) // 第一个是url访问路径,第二个是静态资源相对路径
  1. /public/静态资源服务开放,如果只有第二个参数,则在url链中无需加上/public/xxx,比如原先请求资源需要http://localhost:8000/public/xxxx.css,而现在只需要http://localhost:8000/xxxx.css即可。

     app.use(express.static("public"))
    
  2. /static静态资源,任意静态资源开放都可以只用第二个参数表明路径。

     app.use(express.static("files"))
    
  3. /public/放在第一个参数中表明在请求资源时必须加上/public/xxx

     app.use("/public", express.static("public"))
    
  4. 如果第一个参数存在,但和实际静态资源存放位置的路径不一致,则相当于在url链中使用第一个参数作为路径别名。

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

    如上述代码,若想要请求./public/路径下的静态资源,则需要http://localhost:8000/static/xxxx.css

  5. 使用绝对路径来实现。

     app.use("/static", express.static(path.join(__dirname, "public")))
    

Search

    Table of Contents