Express如何无需逐个配置get路由自动返回client文件夹静态文件
Express批量托管静态文件实现方案
你可以直接使用Express内置的express.static中间件实现需求,不需要为每个文件单独编写路由,具体实现如下:
实现代码
const express = require('express') const app = express() // 引入path模块处理路径,避免不同操作系统路径格式兼容问题 const path = require('path') // 核心配置:将client目录挂载为静态资源目录 app.use(express.static(path.join(__dirname, 'client'))) // 启动服务,端口可自行修改 app.listen(3000, () => { console.log('服务已启动,访问http://localhost:3000即可') })
功能说明
- 该配置会自动将
client目录下的所有文件映射到服务根路由:- 用户访问
/路径时,默认返回client目录下的index.html - 用户访问
/about.html时自动返回对应文件,/style.css等同理,所有静态资源无需单独配置路由
- 用户访问
- 如果需要修改默认访问的首页文件,可以给
express.static传入第二个配置参数:app.use(express.static(path.join(__dirname, 'client'), { index: 'custom.html' // 自定义默认首页文件名 }))
内容的提问来源于stack exchange,提问作者Coder Gautam YT
相关产品推荐
相关产品推荐

