# blogserver **Repository Path**: bruce211/blogserver ## Basic Information - **Project Name**: blogserver - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-23 - **Last Updated**: 2025-07-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 书签管理系统 基于 NestJS 和 MySQL 构建的简单书签管理系统。 ## 功能特性 - 用户注册和登录 - 书签的增删改查 - 按分类管理书签 - RESTful API 设计 ## 技术栈 - NestJS - TypeORM - MySQL - TypeScript - bcryptjs (密码加密) ## 安装和运行 ### 1. 安装依赖 ```bash npm install # 或 yarn install ``` ### 2. 配置数据库 确保 MySQL 服务已启动,然后创建数据库: ```sql CREATE DATABASE bookmark_db; ``` ### 3. 配置环境变量 根据需要修改 `.env` 文件中的数据库配置: ```env DB_HOST=localhost DB_PORT=3306 DB_USERNAME=root DB_PASSWORD=your_password DB_DATABASE=bookmark_db PORT=3000 ``` ### 4. 启动应用 ```bash # 开发模式 npm run start:dev # 生产模式 npm run start:prod ``` 应用将在 http://localhost:3000 启动。 ## API 接口 ### 用户认证 - `POST /auth/register` - 用户注册 - `POST /auth/login` - 用户登录 ### 书签管理 - `GET /bookmarks?userId=1` - 获取用户的所有书签 - `POST /bookmarks?userId=1` - 创建新书签 - `GET /bookmarks/:id?userId=1` - 获取单个书签 - `PATCH /bookmarks/:id?userId=1` - 更新书签 - `DELETE /bookmarks/:id?userId=1` - 删除书签 - `GET /bookmarks/category/:category?userId=1` - 按分类获取书签 ## 数据模型 ### 用户 (User) - id: 主键 - username: 用户名 (唯一) - password: 密码 (加密存储) - email: 邮箱 (可选) - createdAt: 创建时间 - updatedAt: 更新时间 ### 书签 (Bookmark) - id: 主键 - title: 标题 - url: 网址 - description: 描述 (可选) - category: 分类 (可选) - userId: 用户ID (外键) - createdAt: 创建时间 - updatedAt: 更新时间 ## 注意事项 - 本项目为简化版本,未实现 JWT 认证,生产环境建议添加完整的身份验证机制 - 数据库同步模式 (synchronize: true) 仅适用于开发环境 - 建议在生产环境中使用数据库迁移