DataResponse
public struct DataResponse<Value>
extension DataResponse: CustomStringConvertible, CustomDebugStringConvertible
                Used to store all data associated with a serialized response of a data or upload request.
- 
                  
                  
The URL request sent to the server.
Declaration
Swift
public let request: URLRequest? - 
                  
                  
The server’s response to the URL request.
Declaration
Swift
public let response: HTTPURLResponse? - 
                  
                  
The data returned by the server.
Declaration
Swift
public let data: Data? - 
                  
                  
The result of response serialization.
Declaration
Swift
public let result: Result<Value> - 
                  
                  
The timeline of the complete lifecycle of the request.
Declaration
Swift
public let timeline: Timeline - 
                  
                  
Returns the associated value of the result if it is a success,
nilotherwise.Declaration
Swift
public var value: Value? { get } - 
                  
                  
Returns the associated error value if the result if it is a failure,
nilotherwise.Declaration
Swift
public var error: Error? { get } - 
                  
                  
Creates a
DataResponseinstance with the specified parameters derived from response serialization.Declaration
Parameters
requestThe URL request sent to the server.
responseThe server’s response to the URL request.
dataThe data returned by the server.
resultThe result of response serialization.
timelineThe timeline of the complete lifecycle of the
Request. Defaults toTimeline().Return Value
The new
DataResponseinstance. - 
                  
                  
The textual representation used when written to an output stream, which includes whether the result was a success or failure.
Declaration
Swift
public var description: String { get } - 
                  
                  
The debug textual representation used when written to an output stream, which includes the URL request, the URL response, the server data, the response serialization result and the timeline.
Declaration
Swift
public var debugDescription: String { get } - 
                  
                  
Evaluates the specified closure when the result of this
DataResponseis a success, passing the unwrapped result value as a parameter.Use the
mapmethod with a closure that does not throw. For example:let possibleData: DataResponse<Data> = ... let possibleInt = possibleData.map { $0.count }Declaration
Swift
public func map<T>(_ transform: (Value) -> T) -> DataResponse<T>Parameters
transformA closure that takes the success value of the instance’s result.
Return Value
A
DataResponsewhose result wraps the value returned by the given closure. If this instance’s result is a failure, returns a response wrapping the same failure. - 
                  
                  
Evaluates the given closure when the result of this
DataResponseis a success, passing the unwrapped result value as a parameter.Use the
flatMapmethod with a closure that may throw an error. For example:let possibleData: DataResponse<Data> = ... let possibleObject = possibleData.flatMap { try JSONSerialization.jsonObject(with: $0) }Declaration
Swift
public func flatMap<T>(_ transform: (Value) throws -> T) -> DataResponse<T>Parameters
transformA closure that takes the success value of the instance’s result.
Return Value
A success or failure
DataResponsedepending on the result of the given closure. If this instance’s result is a failure, returns the same failure. - 
                  
                  
Evaluates the specified closure when the
DataResponseis a failure, passing the unwrapped error as a parameter.Use the
mapErrorfunction with a closure that does not throw. For example:let possibleData: DataResponse<Data> = ... let withMyError = possibleData.mapError { MyError.error($0) }Declaration
Swift
public func mapError<E>(_ transform: (Error) -> E) -> DataResponse where E : ErrorParameters
transformA closure that takes the error of the instance.
Return Value
A
DataResponseinstance containing the result of the transform. - 
                  
                  
Evaluates the specified closure when the
DataResponseis a failure, passing the unwrapped error as a parameter.Use the
flatMapErrorfunction with a closure that may throw an error. For example:let possibleData: DataResponse<Data> = ... let possibleObject = possibleData.flatMapError { try someFailableFunction(taking: $0) }Declaration
Swift
public func flatMapError<E>(_ transform: (Error) throws -> E) -> DataResponse where E : ErrorParameters
transformA throwing closure that takes the error of the instance.
Return Value
A
DataResponseinstance containing the result of the transform. - 
                  
                  
The task metrics containing the request / response statistics.
Declaration
Swift
public var metrics: URLSessionTaskMetrics? { get } 
      DataResponse Structure Reference