Skip to content

获取项目列表

获取所有已发布的项目的列表,支持分页和筛选。

接口信息

  • 请求路径: GET /api/projects
  • 认证方式: 无需认证(公开接口)
  • 内容类型: application/json

查询参数

参数名类型必填说明
pagenumber页码,默认 1
limitnumber每页数量,默认 10
categorynumber分类 ID 筛选
statusstring状态筛选:published/draft

响应字段

字段名类型说明
dataarray项目列表
totalnumber总记录数
pagenumber当前页码
limitnumber每页数量
totalPagesnumber总页数

项目字段

字段名类型说明
idnumber项目 ID
titlestring项目标题
descriptionstring项目描述
coverImagestring封面图片 URL
demoUrlstring演示链接
repoUrlstring代码仓库链接
techStackarray技术栈标签
likeCountnumber点赞次数
viewCountnumber浏览次数
statusstring状态:published/draft
createdAtstring创建时间

请求示例

bash
# 获取第一页
curl http://localhost:3000/api/projects

# 获取第 2 页,每页 20 条
curl http://localhost:3000/api/projects?page=2&limit=20

# 筛选分类
curl http://localhost:3000/api/projects?category=1

响应示例

json
{
  "success": true,
  "data": [
    {
      "id": 1,
      "title": "个人博客系统",
      "description": "基于 Nuxt.js 3 的现代化博客系统",
      "coverImage": "https://example.com/project1.jpg",
      "demoUrl": "https://demo.example.com",
      "repoUrl": "https://github.com/user/blog",
      "techStack": ["Nuxt.js", "TypeScript", "Tailwind CSS"],
      "likeCount": 45,
      "viewCount": 230,
      "status": "published",
      "createdAt": "2024-01-15T10:00:00.000Z"
    }
  ],
  "total": 100,
  "page": 1,
  "limit": 10,
  "totalPages": 10
}

错误响应

HTTP 状态码说明
400参数错误
500服务器错误

相关接口