服务器

异步 Swift 动态可配置网络层。

概述

这个小型库为大多数现代 Swift 应用程序的网络需求提供了解决方案。它被设计为依赖于应用程序用户的状态,动态地更改其配置和请求参数,例如在用户授权或其他环境更改时。信息交换——对外发数据的编码、设置相应的请求头、检查响应代码、解码接收到的数据——都通过单个方法完成。

发起一个请求可以像这样简单:

try await Server.back
    .request(
        type: .post,
        path: "/ping"
    )

或者像这样复杂:

let userCard =
    try await Server.back
        .request(
            type: .post,
            path: "/userinfo",
            query: [
                "id": userID,
            ],
            send: .multipart([
                .png(avatarImage, name: "avatar", filename: "avatar.png"),
                .text(firstName, name: "first_name"),
                .text(lastName, name: "last_name"),
            ]),
            take: .json(UserCard.self)
        )

ReactiveSwift 版本

ReactiveSwift 风格的 Server 包已归档在 reactiveswift 分支中,可以通过版本标签 1.0.x 引用。

文档

完整的 Xcode 文档包含在代码中,其归档版本附加在 GitHub 发布页面上。

文档也可在 在线 获取。