关于 magento-api-developer
面向 Magento 2 开发的技能,用于设计和实现 REST 与 GraphQL API,涵盖服务契约、安全、性能、测试和文档,适用于电商集成。
主要功能
- 01REST 端点设计
- 02GraphQL 模式与解析器开发
- 03服务契约与 DTO
- 04身份验证与授权
- 05API 测试与文档
适用场景
- 01构建无头电商 API
- 02将 Magento 接入外部系统
- 03创建商品、订单和客户端点
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ maxnorm/ magento2-agent-skills --skill magento-api-developer安装后在 Claude Code 中输入/magento-api-developer确认已加载。
详细介绍
Magento 2 API 开发者
擅长设计和实现稳健、可扩展的 REST 和 GraphQL API,为无头电商、移动应用和第三方集成提供可靠的数据接口。
使用场景
- 开发 REST 或 GraphQL API
- 创建服务契约
- 构建无头电商解决方案
- 与外部系统集成
- 实现 API 身份验证和授权
- 设计数据传输对象
API 架构
服务契约
- 设计简洁、带版本的 API 接口
- 创建用于数据交换的数据传输对象(DTO)
- 实现数据访问的仓储模式
- 保持向后兼容性
REST API 设计
- 遵循行业最佳实践,实现 RESTful 端点
- 使用适当的 HTTP 方法(GET、POST、PUT、DELETE)
- 设计一致的 URL 结构
- 使用适当的状态码
GraphQL 实现
- 构建高效的 GraphQL 架构和解析器
- 优化查询复杂度
- 实现适当的缓存策略
- 高效处理嵌套关系
API 开发流程
1. API 规划与设计
- 需求分析:从利益相关方收集 API 需求
- 数据建模:设计数据结构和实体关系
- 端点架构:规划 REST 端点和 GraphQL 架构结构
- 安全设计:规划身份验证、授权和数据保护
- 性能规划:以可扩展性和最佳响应时间为目标进行设计
2. 服务契约定义
- 接口设计:在
Api/目录中创建完整的服务接口 - 数据契约规范:定义 DTO 和数据结构
- 错误处理:设计一致的错误响应模式
- 验证规则:实现稳健的输入验证和清理
- 文档:编写完整的 API 文档
3. 实施开发
- 端点实现:构建 REST 控制器和 GraphQL 解析器
- 业务逻辑:实现服务层业务逻辑
- 数据访问:创建用于数据操作的仓储实现
- 响应格式化:确保响应结构一致
- 错误处理:实现全面的错误处理和日志记录
4. 测试与质量保证
- 单元测试:为服务层和仓储层编写全面的测试
- 集成测试:测试完整的 API 工作流和数据流
- 性能测试:验证 API 在负载下的性能
- 安全测试:测试身份验证、授权和数据保护
- 文档测试:确保 API 文档准确无误
API 类型
电商 REST API
- 商品管理:商品 CRUD 操作、目录管理
- 订单处理:订单创建、更新和履行工作流
- 客户管理:客户注册、身份验证和资料管理
- 库存操作:库存管理、预留和可用性
- 支付处理:支付方式集成和交易处理
GraphQL 架构开发
- 商品查询:高效检索包含嵌套关系的商品数据
- 购物车操作:购物车变更和实时更新
- 客户查询:对客户数据和订单历史进行精细化控制
- 搜索解析器:高级搜索和筛选功能
- 性能优化:查询复杂度分析和缓存策略
管理 API
- 管理操作:后台管理和配置 API
- 批量操作:大量数据导入/导出和批处理
- 报表 API:数据分析和商业智能端点
- 系统配置:动态配置管理 API
- 用户管理:管理员用户和角色管理接口
高级技术
性能优化
- 查询优化:提高数据库查询效率并解决 N+1 问题
- 缓存策略:实现 API 响应缓存和缓存失效机制
- 分页:高效处理大型数据集分页和基于游标的导航
- 字段选择:允许客户端指定所需字段以进行优化
- 批量操作:实现用于批量操作的批量端点
安全实现
- 身份验证方法:OAuth 2.0、JWT 令牌和 API 密钥管理
- 授权模式:基于角色和基于资源的访问控制
- 速率限制:实现 API 限流和滥用防护
- 输入验证:全面清理和验证输入
- CORS 管理:正确配置跨源资源共享
错误处理与监控
- 一致的错误响应:标准化错误格式和 HTTP 状态码
- 日志策略:全面记录 API 请求和错误日志
- 监控集成:监控 API 性能和运行状况
- 告警系统:针对 API 问题和异常自动发送告警
- 调试工具:提供调试日志和请求追踪功能
最佳实践
设计原则
- 面向资源的设计:围绕资源和集合设计 API
- 无状态操作:确保 API 操作无状态且幂等
- 一致性:保持命名、模式和响应格式的一致
- 简洁性:为常见操作提供简单直观的接口
- 灵活性:为可扩展性和未来需求进行设计
文档与开发者体验
- 交互式文档:提供 Swagger/OpenAPI 交互式文档
- 代码示例:提供多种编程语言的实用示例
- SDK 和库:为常用编程语言提供客户端库
- 沙盒环境:为 API 使用者提供测试环境
- 开发者支持:建立支持渠道和社区资源
参考资料
专注于构建满足当前集成需求的 API,同时为未来数字商务创新奠定基础。
评论
支持 Markdown