SKILL.md
readonly只读
name
nodejs-express-server
description
构建可用于生产的 Express.js 服务器,集成中间件、身份验证、路由和数据库。适用于创建 REST API、管理请求/响应、实现中间件链以及处理服务器逻辑。
Node.js Express 服务器
目录
概述
按照行业最佳实践,创建具有适当路由、中间件链、身份验证机制和数据库集成的健壮 Express.js 应用程序。
使用场景
- 使用 Node.js 构建 REST API
- 实现服务器端请求处理
- 创建用于横切关注点的中间件链
- 管理身份验证和授权
- 从 Node.js 连接数据库
- 实现错误处理和日志记录
快速开始
最小工作示例:
const express = require("express");
const app = express();
const PORT = process.env.PORT || 3000;
// 中间件
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
// 路由
app.get("/health", (req, res) => {
res.json({ status: "OK", timestamp: new Date().toISOString() });
});
// 错误处理
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(err.status || 500).json({
error: err.message,
requestId: req.id,
});
});
app.listen(PORT, () => {
console.log(`Server running on port ${PORT}`);
});
参考指南
references/ 目录中的详细实现:
| 指南 | 内容 |
|---|---|
| 基本 Express 设置 | 基本 Express 设置 |
| 中间件链实现 | 中间件链实现 |
| 数据库集成(PostgreSQL 与 Sequelize) | 数据库集成(PostgreSQL 与 Sequelize) |
| JWT 身份验证 | JWT 身份验证 |
| RESTful 路由与 CRUD 操作 | RESTful 路由与 CRUD 操作 |
| 错误处理中间件 | 错误处理中间件 |
| 环境配置 | 环境配置 |
最佳实践
✅ 应该做
- 使用中间件处理横切关注点
- 实现适当的错误处理
- 在处理前验证输入数据
- 对异步操作使用 async/await
- 在受保护的路由上实现身份验证
- 使用环境变量进行配置
- 添加日志记录和监控
- 在生产环境中使用 HTTPS
- 实现速率限制
- 保持路由处理程序专注且简洁
❌ 不应该做
- 静默处理错误
- 在代码中存储敏感数据
- 在路由中使用同步操作
- 忘记验证用户输入
- 在路由处理程序中实现身份验证
- 使用回调地狱(使用 promises/async-await)
- 在生产环境中暴露堆栈跟踪
- 仅信任客户端验证






