Instance Method インスタンスメソッド

connection(_:willCacheResponse:)

Sent before the connection stores a cached response in the cache, to give the delegate an opportunity to alter it. 接続がキャッシュされた応答をキャッシュの中に格納する前に送られます、委任先にそれを警告する機会を与えるために。

Declaration 宣言

optional func connection(_ connection: NSURLConnection, 
       willCacheResponse cachedResponse: CachedURLResponse) -> CachedURLResponse?

Parameters パラメータ

connection

The connection sending the message. メッセージを送っている接続。

cachedResponse

The proposed cached response to store in the cache. キャッシュの中に格納することになる、提案されたキャッシュ応答。

Return Value 戻り値

The actual cached response to store in the cache. The delegate may return cachedResponse unmodified, return a modified cached response, or return nil if no cached response should be stored for the connection. キャッシュの中に格納する実際のキャッシュ応答。委任先は、修正されないcachedResponseを返す、修正されたキャッシュ応答を返す、またはキャッシュ応答が接続に対して格納されるべきでないならばnilを返すかもしれません。

Discussion 議論

This method is called only if the URLProtocol handling the request decides to cache the response. As a rule, responses are cached only when all of the following are true: このメソッドは、URLProtocolのリクエスト取り扱いが応答をキャッシュすることを決定する場合にのみ呼び出されます。通例は、応答がキャッシュされるのは、以下の全てが真である場合だけです:

  • The request is for an HTTP or HTTPS URL (or your own custom networking protocol that supports caching). リクエストが、HTTPまたはHTTPS URLのためのものである(またはキャッシュをサポートするあなた独自のあつらえのネットワークプロトコル)。

  • The request was successful (with a status code in the 200–299 range). リクエストが、成功だった(200–299の範囲の中の状態コードを持つ)。

  • The provided response came from the server, rather than out of the cache. 提供された応答が、サーバーからやって来た、キャッシュから出たのではなく。

  • The NSURLRequest object's cache policy allows caching. NSURLRequestオブジェクトの持つキャッシュ方針が、キャッシュを許可する。

  • The cache-related headers in the server’s response (if present) allow caching. サーバーの持つ応答の中のキャッシュ関連ヘッダ(もしあれば)が、キャッシュを許可する。

  • The response size is small enough to reasonably fit within the cache. (For example, if you provide a disk cache, the response must be no larger than about 5% of the disk cache size.) 応答サイズが、キャッシュ内に無理なく収まるほどに十分に小さい。(例えば、あなたがあるディスクキャッシュを提供するならば、応答はディスクキャッシュサイズのだいたい5%より大きくてはいけません。)