← 返回项目

Project · Swift

Swift API Patterns

这个项目整理 Swift 网络层的常见写法:请求类型、响应包装、错误映射、鉴权刷新、分页和 async 状态管理。

请求层边界

请求对象描述路径、方法、参数和响应类型。调用方不拼 URL,不碰 JSON 字典,也不解析业务 code。

protocol APIRequest {
    associatedtype Response: Decodable
    var path: String { get }
    var method: HTTPMethod { get }
}

输出稳定状态

ViewModel 消费的是 Result 或明确的 State,而不是散落的 loading、error、data 三个变量。状态越集中,页面越不容易互相打架。