RxAlamofire - 下载完成的事件丢失

Posted

技术标签:

【中文标题】RxAlamofire - 下载完成的事件丢失【英文标题】:RxAlamofire - event on download completed missing 【发布时间】:2017-12-20 10:37:01 【问题描述】:

我正在使用 RxAlamofire 下载文件。我有这样的事情:

let downloadResult = download(request, to: destination)

不幸的是,downloadResult observable 在下载完成时不会发出下一个事件,它只会发出 onCompleted。

下载完成后我需要下一个事件到 flatMap 到下一个请求。目前我正在根据进度(下载进度> = 1)来发出我感兴趣的事件。

但我觉得这不是最好的解决方案,现在它可以工作,但是我担心这种方法在某些情况下可能会失败。

你能提出一些建议吗?我错过了 RxAlamofire 下载 api 中的某些内容吗?

【问题讨论】:

【参考方案1】:

也许是这样的?

Single<Void>.create  observer in
    return download(request, to: destination)
        .subscribe(onCompleted: 
            observer(.success(()))
        , onError: 
            observer(.error($0))
        )

【讨论】:

以上是关于RxAlamofire - 下载完成的事件丢失的主要内容,如果未能解决你的问题,请参考以下文章

使用 RxAlamofire 限制同时下载

如何使用 RxAlamofire 下载图像

Git repo 同步 - 连接丢失

RxAlamofire - 如何获得错误响应?

RxAlamofire 扩展在一处处理错误

RxAlamofire:retryWhen 掉入订阅块