跳到主要内容

Express 搭建简单 Web 服务

Express 是一个基于 Node.js 平台的 Web 应用开发框架,它提供了一系列强大的特性,帮助我们创建各种 Web 应用。

安装依赖

首先,创建项目目录并初始化:

mkdir express-demo
cd express-demo
npm init -y

安装 Express 和 nodemon:

npm i express
npm i -g nodemon

nodemon 是一个辅助开发工具,它会监听代码变更并自动重启 Node 应用,提升开发效率。

编写服务端代码

新建 app.js 文件,编写服务端代码:

const express = require('express');

const app = express();

// 允许跨域请求
app.all('*', (req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, POST');
next();
});

// 定义路由
app.get('/api/list', (req, res) => {
res.json([
{ id: 1, name: '张三', age: 18 },
{ id: 2, name: '李四', age: 20 },
]);
});

// 启动服务
app.listen(3000, () => {
console.log('server is running at http://localhost:3000');
});

代码说明:

  1. 通过 require('express') 引入 Express。
  2. 调用 express() 创建应用实例 app
  3. 使用 app.all() 中间件允许来自任何域的跨域请求。
  4. 定义 GET 类型的 /api/list 路由,返回一个 JSON 数组。
  5. 调用 app.listen() 启动服务,监听 3000 端口。

配置启动命令

为了方便启动应用,在 package.json 中添加 start 脚本:

{
"name": "express-demo",
"version": "1.0.0",
"scripts": {
"start": "nodemon app.js"
},
"dependencies": {
"express": "^4.18.2"
}
}

现在可以通过 npm start 命令启动应用了。

测试接口

启动应用后,打开浏览器访问 http://localhost:3000/api/list,可以看到返回的 JSON 数据:

[
{
"id": 1,
"name": "张三",
"age": 18
},
{
"id": 2,
"name": "李四",
"age": 20
}
]