SuperAPI AI 工具集

networking-layer

编程与开发

查看项目

更新于 10-16 08:08

技能介绍

用途:为 Swift 项目生成现代化网络层。当用户提出添加网络功能、创建 API 客户端、涉及 HTTP 层或 REST API、从 API 获取数据、URLSession 封装或网络请求时触发。

生成前检查:确认 Swift 版本(async/await 需 5.5+)与部署目标(iOS 15+ / macOS 12+);搜索已有网络实现,如发现则询问是替换还是扩展;询问认证类型(Bearer token、API key、无、自定义)、Base URL 配置(单环境或多环境)、可选功能(指数退避重试、请求响应日志、缓存)。

生成文件:核心文件包括 APIClient.swift(协议与实现)、APIEndpoint.swift(端点定义协议)、NetworkError.swift(类型化错误)、APIConfiguration.swift(Base URL 与认证配置)。可选文件按配置生成 RetryPolicy.swift 或 NetworkLogger.swift。文件位置依项目结构而定:有 Sources/ 则放 Sources/Networking/,有 App/ 则放 App/Networking/,否则放 Networking/。

用法:定义遵循 APIEndpoint 协议的端点并声明 path、method,然后创建客户端(如 URLSessionAPIClient(configuration: .production))并调用 request,返回对应类型的响应。在 SwiftUI 中可通过环境注入 apiClient,在 .task 中发起请求。测试时使用 MockAPIClient 注入模拟响应,断言视图模型状态。

限制与说明:资料未说明具体收费、价格、平台限制或效果保证。异步并发相关说明参考 Swift 6.2,标注 @concurrent 用于后台处理、@MainActor 用于 UI 更新。是否自动写入项目、与现有代码冲突的处理细节暂未提供。