Express 是一个 Node.js Web 应用框架,主要功能:
const express = require('express');
const app = express();
// 1. 处理 HTTP 请求
app.get('/', (req, res) => {...}); // 处理访问首页的请求
// 2. 提供静态文件服务
app.use(express.static(__dirname)); // 允许访问 CSS、图片等静态文件
// 3. 路由管理
app.get('/houses', (req, res) => {...}); // 处理不同页面的访问请求
- server.js 的工作原理
// 1. 导入必要模块
const express = require('express');
const path = require('path');
const app = express();
// 2. 静态文件服务
app.use(express.static(__dirname));
// 作用:让浏览器可以访问到 CSS、图片等文件
// 例如:当浏览器请求 http://localhost:3000/styles.css 时
// Express 会自动返回 styles.css 文件
// 3. 路由处理
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, 'index.html'));
});
// 作用:当访问 http://localhost:3000/ 时
// 返回 index.html 文件给浏览器
// 4. 启动服务器
const PORT = 3000;
app.listen(PORT, () => {
console.log(服务器运行在 http://localhost:${PORT}
);
});
// 作用:在本地计算机的 3000 端口启动 Web 服务
整个过程的工作原理
当你运行 node server.js 时:
启动服务器
node server.js
→ Express 开始监听 3000 端口的请求
当你访问 http://localhost:3000 时:
浏览器 → 发送请求 → localhost:3000
↓
Express 服务器
↓
检查路由
↓
返回 index.html
↓
浏览器 ← 接收响应 ← Express 服务器
3. 当浏览器加载页面资源时:
浏览器 → 请求 styles.css → localhost:3000/styles.css
↓
Express 静态文件服务
↓
返回 styles.css 文件
↓
浏览器 ← 接收样式文件 ← Express 服务器