Files
monkeycode-ai 8422645625 feat: 完成第四批任务 (Task 6.2, 10.1-10.3)
Task 6.2 - 报告导出功能:
- ReportExportService: 报告导出服务
- ExportToMarkdown: Markdown 格式导出
- ExportToHtml: HTML 格式导出(可打印为 PDF)
- ExportToPdf: PDF 导出(HTML 包装)

Task 10.1-10.3 - 文档和打包:
- README.md: 项目主文档
- docs/USAGE.md: 使用指南(CLI 命令、API、Web 界面)
- docs/DEVELOPMENT.md: 开发指南(项目结构、构建、测试、部署)
- docs/API.md: API 参考文档(端点、认证、错误码)
- Dockerfile: Web API Docker 镜像
- docker-compose.yml: Docker Compose 配置
- .dockerignore: Docker 忽略文件
- NuGet 打包配置 (CodePlay.Core.csproj)

测试:42 个 (41 通过,1 跳过) 

新增文件:
- CodePlay.Core/Services/ReportExportService.cs
- README.md
- docs/USAGE.md
- docs/DEVELOPMENT.md
- docs/API.md
- Dockerfile
- docker-compose.yml
- .dockerignore
Co-authored-by: monkeycode-ai <monkeycode-ai@chaitin.com>
2026-06-04 00:54:23 +00:00

1.8 KiB

CodePlay API 参考文档

基础 URL

开发环境:http://localhost:5000/api
生产环境:https://your-domain.com/api

认证

所有 API 端点(除 /api/auth/login 外)都需要 JWT Token 认证。

获取 Token

POST /api/auth/login
Content-Type: application/json

{
  "username": "user",
  "password": "password"
}

响应:

{
  "token": "eyJhbGc...",
  "username": "user",
  "expiresIn": 3600
}

使用 Token

Authorization: Bearer eyJhbGc...

API 端点

转换 (Conversion)

POST /conversion/convert

转换代码

请求体:

{
  "sourceCode": "string",
  "sourceLanguage": "CSharp",
  "targetLanguage": "Java",
  "validationRounds": 2,
  "options": {
    "keepComments": true,
    "keepDocStrings": true
  }
}

响应:

{
  "success": true,
  "transformedCode": "string",
  "report": {
    "linesConverted": 100,
    "classesConverted": 5
  }
}

报告 (Report)

GET /report

获取所有报告

GET /report/{id}

获取指定报告

DELETE /report/{id}

删除报告

GET /report/stats

获取统计信息

项目 (Project)

GET /project

获取项目列表

POST /project

创建项目

GET /project/{id}

获取项目详情

PUT /project/{id}

更新项目

DELETE /project/{id}

删除项目

认证 (Auth)

POST /auth/login

用户登录

POST /auth/refresh

刷新 Token

GET /auth/me

获取当前用户信息

错误码

状态码 说明
200 成功
400 请求参数错误
401 未授权
403 禁止访问
404 资源不存在
429 请求过于频繁
500 服务器内部错误

限流

  • 限制:60 请求/分钟/IP
  • 超出返回 429 状态码
  • 响应头包含 Retry-After