📜  如何使用 Node.js 提供静态内容?

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

如何使用 Node.js 提供静态内容?

当您想让服务器可以访问静态内容以供使用时,访问静态文件非常有用。为了提供静态文件,例如图像、CSS 文件和 JavaScript 文件等,我们使用 node.js 中内置的中间件,即 express.static。

设置静态中间件:

  1. 您需要创建一个文件夹并添加一个文件。例如,app.js,要运行此文件,您需要运行以下命令。
    node app.js
  2. 现在创建一个文件夹,其内容要用作静态,例如,您可以创建一个名为 public 的文件夹。
  3. 现在向这个公用文件夹添加一些静态内容。在这种情况下,公用文件夹中有一个 GeeksLogo.png 图像。
  4. 要将此文件夹作为静态文件夹提供服务,您需要在 index.js 中编写此中间件,如下所示:
    app.use(express.static(path.join(__dirname, 'public')))
    其中 path 是全局对象, __dirname 保存当前目录地址。 Views 是保存我们所有网页的文件夹。
  5. 现在创建一个像 Demo.ejs 这样的 EJS 文件,并将这个文件放在 views 文件夹中。

文件名:Demo.ejs




    Static Middleware Demo


  


文件名:app.js

const express = require('express')
const path = require('path')
const app = express()
  
// Static Middleware
app.use(express.static(path.join(__dirname, 'public')))
  
// View Engine Setup
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', 'ejs')
  
app.get('/', function(req, res){
    res.render('Demo')
})
  
app.listen(8080, function(error){
    if(error) throw error
    console.log("Server created Successfully")
})

运行程序的步骤:

  1. 项目结构将如下所示:
    项目结构
  2. 确保您拥有像我使用“ejs”一样的“查看引擎”,并使用以下命令安装 express:
    npm install ejs
    npm install express
  3. 使用以下命令运行 app.js 文件:
    node app.js

    上述命令的输出

  4. 打开浏览器并输入此 URL:
    http://localhost:8080/
  5. 然后你会看到Demo.ejs页面如下图:
    Ejs 演示页面

因此,这就是您可以向我们的服务器提供静态内容的方式,这对于在您的项目中提供图像、CSS、js 文件等非常有帮助。