IDZSwiftDataTaskPublisher

这是一个(可能非常简陋的)尝试,用于实现在 WWDC 2019 第 712 场会议中提到的 URLSession 上的 dataTaskPublisher(for: URLRequest) 扩展。你可以在 https://developer.apple.com/videos/play/wwdc2019/712/ 约 20:32 处观看它的演示。

它的使用非常简单。

import Foundation
import IDZSwiftDataTaskPublisher

let request = URLRequest(url: URL(string: "http://example.com")!)
_ = URLSession.shared.dataTaskPublisher(for: request)
    .sink { print(String(data: $0.data, encoding: .utf8)!) }

dispatchMain()

这个例子下载并打印 http://example.com 的 HTML 代码。

使用包

这个包支持 Swift Package Manager。只需添加到你的

.package(url: "https://github.com/iosdevzone/IDZSwiftDataTaskPublisher", from: "0.1.0"),

Package.swift 文件中。

构建演示程序

仓库中包含一个简单的演示。切换到 Demos/macOS/SimpleDemo 目录,然后使用 swift build 构建它,并使用 swift run 运行它。你应该会在终端上看到令人愉悦的 HTML 文本。