Back to Alamofire

CachedResponseHandler

docs/Protocols/CachedResponseHandler.html

5.12.02.4 KB
Original Source

CachedResponseHandler

public protocol CachedResponseHandler : Sendable

A type that handles whether the data task should store the HTTP response in the cache.

`

                dataTask(_:willCacheResponse:completion:)
                `

Determines whether the HTTP response should be stored in the cache.

The completion closure should be passed one of three possible options:

  1. The cached response provided by the server (this is the most common use case).
  2. A modified version of the cached response (you may want to modify it in some way before caching).
  3. A nil value to prevent the cached response from being stored in the cache.

Declaration

Swift

func dataTask(_ task: URLSessionDataTask,
              willCacheResponse response: CachedURLResponse,
              completion: @escaping (CachedURLResponse?) -> Void)

Parameters

| task |

The data task whose request resulted in the cached response.

| | response |

The cached response to potentially store in the cache.

| | completion |

The closure to execute containing cached response, a modified response, or nil.

|

Available where Self == ResponseCacher

`

                cache
                ` Extension method 

Provides a ResponseCacher which caches the response, if allowed. Equivalent to ResponseCacher.cache.

Declaration

Swift

public static var cache: ResponseCacher { get }

`

                doNotCache
                ` Extension method 

Provides a ResponseCacher which does not cache the response. Equivalent to ResponseCacher.doNotCache.

Declaration

Swift

public static var doNotCache: ResponseCacher { get }

`

                modify(using:)
                ` Extension method 

Creates a ResponseCacher which modifies the proposed CachedURLResponse using the provided closure.

Declaration

Swift

public static func modify(using closure: @escaping (@Sendable (URLSessionDataTask, CachedURLResponse) -> CachedURLResponse?)) -> ResponseCacher

Parameters

| closure |

Closure used to modify the CachedURLResponse.

|

Return Value

The ResponseCacher.