KingWong的博客

分享技术与生活,记录成长足迹

Node.js实战:构建高效的RESTful API

RESTful API是现代Web服务的主流架构风格。它使用HTTP协议的标准方法(GET、POST、PUT、DELETE)来实现对资源的增删改查操作。本文将使用Node.js和Express框架,从零开始构建一个完整的RESTful API。

项目初始化

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

mkdir my-api && cd my-api
npm init -y
npm install express cors helmet morgan

我们安装了express作为Web框架,cors处理跨域,helmet增加安全性,morgan记录HTTP日志。

创建服务器

const express = require('express');
const cors = require('cors');
const helmet = require('helmet');
const morgan = require('morgan');

const app = express();

// 中间件
app.use(helmet());
app.use(cors());
app.use(morgan('combined'));
app.use(express.json());

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

app.listen(3000, () => {
    console.log('服务器运行在 http://localhost:3000');
});

RESTful路由设计

一个规范的RESTful API应该遵循以下路由约定:

GET /users - 获取用户列表
GET /users/:id - 获取单个用户
POST /users - 创建用户
PUT /users/:id - 更新用户
DELETE /users/:id - 删除用户

错误处理

良好的错误处理是API可靠性的保障:

app.use((err, req, res, next) => {
    console.error(err.stack);
    res.status(500).json({
        error: '服务器内部错误',
        message: err.message
    });
});

总结

构建RESTful API需要注意:遵循HTTP语义、使用合适的HTTP状态码、保持路由设计一致、做好错误处理和日志记录、使用中间件增强安全性和功能性。