mirror of
https://github.com/ReactiveX/RxSwift.git
synced 2024-10-04 14:07:22 +03:00
Update NSURLSession function in README
This commit is contained in:
parent
f6a11e5eb9
commit
b7c0891e4e
17
README.md
17
README.md
@ -244,16 +244,21 @@ And what if you need to create your own observable? It's pretty easy. This code
|
||||
|
||||
```swift
|
||||
extension NSURLSession {
|
||||
public func rx_response(request: NSURLRequest) -> Observable<(NSData!, NSURLResponse!)> {
|
||||
public func rx_response(request: NSURLRequest) -> Observable<(NSData, NSURLResponse)> {
|
||||
return create { observer in
|
||||
let task = self.dataTaskWithRequest(request) { (data, response, error) in
|
||||
if data == nil || response == nil {
|
||||
observer.on(.Error(error ?? UnknownError))
|
||||
guard let response = response, data = data else {
|
||||
observer.on(.Error(error ?? RxCocoaURLError.Unknown))
|
||||
return
|
||||
}
|
||||
else {
|
||||
observer.on(.Next(data, response))
|
||||
observer.on(.Completed)
|
||||
|
||||
guard let httpResponse = response as? NSHTTPURLResponse else {
|
||||
observer.on(.Error(RxCocoaURLError.NonHTTPResponse(response: response)))
|
||||
return
|
||||
}
|
||||
|
||||
observer.on(.Next(data, httpResponse))
|
||||
observer.on(.Completed)
|
||||
}
|
||||
|
||||
task.resume()
|
||||
|
Loading…
Reference in New Issue
Block a user