ERPTurbo_Poster/openspec/changes/add-cors-and-api-prefix-config/tasks.md
shenyifei dc940d2598 feat(api): 添加海报和PDF生成功能
- 新增海报生成接口,支持从网页URL或HTML内容生成海报图像
- 新增PDF生成接口,支持从网页URL或HTML内容生成PDF文档
- 添加Swagger API文档注释,完善接口描述和参数说明
- 实现HTML内容参数支持,允许直接传入HTML结构生成海报/PDF
- 添加输入验证和标准化响应格式
- 引入DOMPurify库对HTML内容进行安全过滤
- 更新环境变量配置,支持API密钥认证和CORS设置
- 优化上传逻辑,统一返回标准响应结构
- 添加构建脚本支持Docker镜像打包和推送
2025-11-20 17:51:35 +08:00

1.6 KiB
Raw Blame History

1. 环境配置更新

  • 1.1 更新.env.example文件添加CORS和API前缀配置项
  • 1.2 添加配置说明和默认值注释
  • 1.3 验证配置项命名的一致性

2. CORS中间件实现

  • 2.1 安装cors依赖包如果尚未安装
  • 2.2 在server.mjs中导入cors中间件
  • 2.3 实现CORS配置逻辑支持环境变量控制
  • 2.4 添加CORS配置验证和错误处理
  • 2.5 测试CORS配置的有效性

3. API前缀配置实现

  • 3.1 在server.mjs中获取API_PREFIX环境变量
  • 3.2 实现API前缀格式验证和标准化
  • 3.3 更新API端点路由使用可配置前缀
  • 3.4 保持健康检查端点不变(/status
  • 3.5 添加前缀配置的启动日志输出

4. 路由更新

  • 4.1 更新POST /api/v1/poster端点使用新前缀
  • 4.2 更新POST /api/v1/pdf端点使用新前缀
  • 4.3 确保Swagger文档路径不受影响
  • 4.4 验证静态文件路径保持不变

5. Swagger文档更新

  • 5.1 保持swagger注释中的默认路径向后兼容
  • 5.2 确保服务器启动时显示实际配置信息
  • 5.3 验证API文档的可访问性

6. 测试和验证

  • 6.1 测试默认配置下的API访问
  • 6.2 测试自定义前缀配置
  • 6.3 测试CORS配置的有效性
  • 6.4 测试空前缀配置场景
  • 6.5 验证错误配置的降级处理
  • 6.6 进行集成测试确保所有功能正常

7. 文档更新

  • 7.1 更新README.md中的环境配置说明
  • 7.2 添加CORS和API前缀配置示例
  • 7.3 更新API使用文档和示例代码
  • 7.4 添加配置变更的迁移指南