# CodePlay API 参考文档 ## 基础 URL ``` 开发环境:http://localhost:5000/api 生产环境:https://your-domain.com/api ``` ## 认证 所有 API 端点(除 /api/auth/login 外)都需要 JWT Token 认证。 ### 获取 Token ```http POST /api/auth/login Content-Type: application/json { "username": "user", "password": "password" } ``` 响应: ```json { "token": "eyJhbGc...", "username": "user", "expiresIn": 3600 } ``` ### 使用 Token ```http Authorization: Bearer eyJhbGc... ``` ## API 端点 ### 转换 (Conversion) #### POST /conversion/convert 转换代码 **请求体**: ```json { "sourceCode": "string", "sourceLanguage": "CSharp", "targetLanguage": "Java", "validationRounds": 2, "options": { "keepComments": true, "keepDocStrings": true } } ``` **响应**: ```json { "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