关于 nodejs-express-server
面向构建 API 和服务端请求处理的开发者,提供 Node.js Express 应用开发指导,涵盖路由、中间件、身份验证、数据库集成及实践建议。
主要功能
- 01Express 设置与路由
- 02中间件链设计
- 03JWT 身份验证指导
- 04PostgreSQL 与 Sequelize 集成
- 05CRUD 路由与错误处理
适用场景
- 01使用 Node.js 构建 REST API
- 02为受保护路由添加身份验证
- 03将 Express 应用连接到 PostgreSQL
- 04组织请求验证与错误处理
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill nodejs-express-server安装后在 Claude Code 中输入/nodejs-express-server确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/authentication-with-jwt.mdbasic-express-setup.mddatabase-integration-postgresql-with-sequelize.mdenvironment-configuration.mderror-handling-middleware.mdmiddleware-chain-implementation.mdrestful-routes-with-crud-operations.mdscripts/security-checklist.sh详细介绍
Node.js Express 服务端
目录
概述
遵循行业最佳实践,创建健壮的 Express.js 应用,正确设置路由、中间件链、身份验证机制和数据库集成。
适用场景
- 使用 Node.js 构建 REST API
- 实现服务端请求处理
- 为横切关注点创建中间件链
- 管理身份验证和授权
- 从 Node.js 连接数据库
- 实现错误处理和日志记录
快速开始
最小可运行示例:
const express = require("express");
const app = express();
const PORT = process.env.PORT || 3000;
// Middleware
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
// Routes
app.get("/health", (req, res) => {
res.json({ status: "OK", timestamp: new Date().toISOString() });
});
// Error handling
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 基础设置 |
| 中间件链实现 | 中间件链实现 |
| 数据库集成(使用 Sequelize 的 PostgreSQL) | 数据库集成(使用 Sequelize 的 PostgreSQL) |
| 使用 JWT 进行身份验证 | 使用 JWT 进行身份验证 |
| 具有 CRUD 操作的 RESTful 路由 | 具有 CRUD 操作的 RESTful 路由 |
| 错误处理中间件 | 错误处理中间件 |
| 环境配置 | 环境配置 |
最佳实践
✅ 应该做
- 使用中间件处理横切关注点
- 实现完善的错误处理
- 在处理前验证输入数据
- 对异步操作使用 async/await
- 在受保护的路由上实现身份验证
- 使用环境变量进行配置
- 添加日志记录和监控
- 在生产环境中使用 HTTPS
- 实现速率限制
- 保持路由处理程序专注且精简
❌ 不应该做
- 静默处理错误
- 在代码中存储敏感数据
- 在路由中使用同步操作
- 忘记验证用户输入
- 在路由处理程序中实现身份验证
- 使用回调地狱(改用 Promise 或 async/await)
- 在生产环境中暴露堆栈跟踪
- 只信任客户端验证
评论
支持 Markdown