nodejs-express-server

nodejs-express-server

热门

构建可用于生产的 Express.js 服务器,集成中间件、身份验证、路由和数据库。适用于创建 REST API、管理请求/响应、实现中间件链以及处理服务器逻辑。

301Star
45Fork
更新于 2026/3/4
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)
  • 在生产环境中暴露堆栈跟踪
  • 仅信任客户端验证