返回

剖析 Express.js 源码——一切从 app.js 开始

前端

expressInit

一切从 app.js 开始

Express.js 的核心是 app.js 文件,它是 Express.js 的入口文件,负责初始化框架并提供应用程序的入口点。我们首先从 app.js 文件入手,来一探究竟。

1. 引入必要的模块

在 app.js 文件的开头,首先引入了一些必要的模块,包括 Express.js 框架本身、日志记录模块、中间件模块以及一些应用程序所需的模块。

const express = require('express');
const logger = require('morgan');
const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const session = require('express-session');

2. 创建 Express 实例

接下来,我们创建了一个 Express 实例,这是应用程序的核心对象。

const app = express();

3. 配置中间件

中间件是 Express.js 中一个重要的概念,它允许我们在应用程序中执行某些特定的操作。在 app.js 文件中,我们配置了一些常用的中间件,包括日志记录中间件、解析请求体中间件、解析 Cookie 中间件以及会话中间件。

app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(session({ secret: 'mysecret', resave: false, saveUninitialized: true }));

4. 定义路由

路由是 Express.js 中另一个重要的概念,它用于将请求映射到对应的处理函数。在 app.js 文件中,我们定义了一些路由,以便应用程序能够响应不同的请求。

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.post('/user', (req, res) => {
  const user = req.body;
  res.send(user);
});

5. 启动服务器

最后,我们调用 app.listen() 方法启动服务器,应用程序将开始监听指定的端口,并等待来自客户端的请求。

app.listen(3000, () => {
  console.log('Server is listening on port 3000');
});

以上便是 Express.js 源码 app.js 文件的主要内容,它为我们提供了应用程序的入口点,并配置了一些必要的中间件和路由。从这里开始,我们可以进一步深入探索 Express.js 的源码,了解它的更多细节和强大之处。