UrsusHTTP 1.10.1

UrsusHTTP 1.10.1

Daniel Clelland 维护。



 
依赖
Alamofire~> 5.2
AlamofireEventSource~> 1.2
UrsusAtom~> 1.2
 

UrsusHTTP 1.10.1

  • Daniel Clelland

Ursus HTTP

用于 iOS/macOS 的 Swift 的 Urbit HTTP/%eyre 客户端。

请参考我的 Ursus Chat 仓库以获取示例项目。

用法

Ursus HTTP 现在正处于开发中,将提供更好的文档和演示应用程序。现在这是一个快速草图:

let client = Client(url: URL(string: "https://")!, code: "fipfes-fipfes-fipfes-fipfes")
client.loginRequest() { result in
    switch result {
    case .success(let ship):
        client.connect()
        client.subscribeRequest(ship: ship, app: "chat-view", path: "/primary") { event in
            print(event)
        }
    case .failure(let error):
        print(error)
    }
}

安装

您可以通过将以下行添加到 podfile 中来使用 Cocoapods 安装 Ursus:

pod 'UrsusHTTP', '~> 1.10'

如果您需要,我可以帮助您设置 Carthage 或 Swift 包管理器支持。

待办事项列表

使此代码库更佳的方法

  • 新的 %logout 端点是否应该清除 urbauth cookie?
  • 将 ID 传递给事件处理程序,以便可以发出取消订阅请求。
  • 事件源请求应先 .put 以创建新通道,然后 .get 以检索现有通道;已经尝试过这一点,但 %eyre 返回 400 错误代码。
  • 登录和通道请求可以使用状态枚举来维护 LoginStateChannelState
    • 如果用户未认证或通道未连接,则可以将请求数据链提取。
    • 可以使用自定义响应序列化程序移除Poke和Subscribe处理器。
  • 正确测试UnsubscribeRequestDeleteRequest
  • 更好的文档/实例。

其他客户端

依赖项