📜  Express.js express.static()函数

📅  最后修改于: 2022-05-13 01:56:44.273000             🧑  作者: Mango

Express.js express.static()函数

express.static()函数是 Express 中内置的中间件函数。它提供静态文件并基于serve-static。

句法:

express.static(root, [options])

参数: root 参数描述了提供静态资产的根目录。

返回值:它返回一个对象。

express模块的安装:

  1. 您可以访问安装 express 模块的链接。您可以使用此命令安装此软件包。
    npm install express
  2. 安装 express 模块后,您可以使用命令在命令提示符下检查您的 express 版本。
    npm version express
  3. 之后,您可以创建一个文件夹并添加一个文件,例如 index.js。要运行此文件,您需要运行以下命令。
    node index.js

示例 1:文件名:index.js

var express = require('express');
var app = express();
var path = require('path');
var PORT = 3000;
  
// Static Middleware 
app.use(express.static(path.join(__dirname, 'public')))
    
app.get('/', function (req, res, next) {
    res.render('home.ejs');
})
  
app.listen(PORT, function(err){
    if (err) console.log(err);
    console.log("Server listening on PORT", PORT);
});

现在,使用以下代码在 views 文件夹中创建home.ejs文件:
文件名:home.ejs

 
 
 
    express.static() Demo 
 
 
   

Greetings from GeeksforGeeks

       

运行程序的步骤:

  1. 项目结构将如下所示:

    注意: Demo.jpg放置在公用文件夹中,因为公用文件夹现在作为静态服务提供给服务器。
  2. 确保您已使用以下命令安装expressejs模块:
    npm install express
    npm install ejs
    
  3. 使用以下命令运行 index.js 文件:
    node index.js

    输出:

    Server listening on PORT 3000
    
  4. 现在打开浏览器并转到http://localhost:3000/ ,您将在屏幕上看到以下输出:

示例 2:
文件名:index.js

var express = require('express');
var app = express();
var path = require('path');
  
// Static Middleware 
console.log(app.use(express.static(
    path.join(__dirname, 'public'))))

使用以下命令运行 index.js 文件:

node index.js

输出:

[Function: app] EventEmitter {
  _events: [Object: null prototype] { mount: [Function: onmount] },
  _eventsCount: 1,
  _maxListeners: undefined,
  setMaxListeners: [Function: setMaxListeners],
  getMaxListeners: [Function: getMaxListeners],
  emit: [Function: emit],
  .
  .
  .
  .
  locals: [Object: null prototype] {
    settings: {
      'x-powered-by': true,
      etag: 'weak',
      'etag fn': [Function: generateETag],
      env: 'development',
      'query parser': 'extended',
      'query parser fn': [Function: parseExtendedQueryString],
      'subdomain offset': 2,
      'trust proxy': false,
      'trust proxy fn': [Function: trustNone],
      view: [Function: View],
      views: 'C:\\Users\\Lenovo\\Downloads\\GFG 
        Reviewer Internship\\Program\\views',
      'jsonp callback name': 'callback'
    }
  },
  mountpath: '/',
  _router: [Function: router] {
    params: {},
    _params: [],
    caseSensitive: false,
    mergeParams: undefined,
    strict: false,
    stack: [ [Layer], [Layer], [Layer] ]
  }
}

参考:官方文档