首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RxAlamofire后多部分数据

RxAlamofire后多部分数据
EN

Stack Overflow用户
提问于 2016-12-28 11:02:58
回答 1查看 2.5K关注 0票数 2

如何用RxAlamofire发送多部分数据

例如在阿拉莫火

代码语言:javascript
复制
let URL = try! URLRequest(url: "http://example.com", method: .post)


Alamofire.upload(multipartFormData: { formData in
    // multiaprt
}, with: URL, encodingCompletion: {(result: SessionManager.MultipartFormDataEncodingResult) in

})
  1. 如何使用RxAlamofire 获得相同的行为/功能
  2. 或将此函数包装在可观察的?中的方法
EN

回答 1

Stack Overflow用户

发布于 2017-01-19 19:21:45

您可以这样轻松地包装该函数:

代码语言:javascript
复制
func wrapper() -> Observable<SomeResponseType> {
    return Observable.create { observer in

        let URL = try! URLRequest(url: "http://example.com", method: .post)

        Alamofire.upload(
            multipartFormData: { formData in
                // multiaprt
            }, 
            with: URL, 
            encodingCompletion: { encodingResult in

                switch encodingResult {

                case .success(let upload, _, _):
                    upload.responseJSON { response in
                        // convert response in something of SomeResponseType
                        // ...
                    observer.onNext(response)
                    observer.onCompleted()
                }
                case .failure(let encodingError):
                    observer.onError(encodingError)
                }
            })

        return Disposables.create()
    }
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41360676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档