REST API测试应用

一个基于Node.js和MongoDB的全栈RESTful API应用,提供用户认证和产品管理功能。

  • by gianfranco-omnigpt
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 gianfranco-omnigpt/mcp-test-app

使用说明

MCP测试应用程序

用于测试GitHub MCP工具性能的Node.js REST API示例应用程序。

概述

这是一个使用Express.js和MongoDB构建的全栈Node.js应用程序。它提供了一个RESTful API,用于管理带有身份验证的用户和产品。

项目结构

mcp-test-app/
├── config/              # Configuration files
│   ├── database.js      # Database connection setup
│   └── app.config.js    # Application configuration
├── src/
│   ├── index.js         # Application entry point
│   ├── routes/          # API route definitions
│   ├── controllers/     # Request handlers
│   ├── services/        # Business logic layer
│   ├── models/          # Database models
│   └── middleware/      # Express middleware
├── .env.example         # Environment variables template
└── package.json         # Project dependencies

特性

  • 使用JWT进行用户身份验证
  • 用户注册和个人资料管理
  • 产品CRUD操作
  • MongoDB与Mongoose的集成
  • 错误处理中间件
  • 基于环境的配置

入门指南

  1. 安装依赖项:

    npm install
    
  2. 复制 .env.example 到 .env 并配置您的环境变量

  3. 启动服务器:

    npm start
    

API终点

用户

  • POST /api/users/register -注册新用户
  • POST /api/users/login -登录用户
  • GET /api/users/profile -获取用户配置文件(经过身份验证)
  • PUT /api/users/profile -更新用户配置文件(已验证)

产品

  • GET /api/products -获取所有产品
  • GET /api/products/:id -按ID获取产品
  • POST /api/products -创建新产品(经过身份验证)
  • PUT /api/products/:id -更新产品(已验证)
  • DELETE /api/products/:id -删除产品(已验证)

建筑

该应用程序遵循分层架构:

  1. 路由层:定义API端点并将其映射到控制器
  2. 控制器层:处理HTTP请求/响应和调用服务
  3. 服务层:包含业务逻辑并与模型交互
  4. 模型层:定义数据模式和数据库交互
  5. 中间件层:身份验证、错误处理和请求处理

技术

  • Express.js-Web框架
  • MongoDB-数据库
  • Mongoose-ODM
  • JWT-身份验证
  • bcrypt-密码哈希
  • dotenv-环境管理