Class

NSURLProtocol

An abstract class that handles the loading of protocol-specific URL data. ある抽象クラス、それはプロトコル特有URLデータのロードを取り扱います。

Declaration 宣言

@interface NSURLProtocol : NSObject

Overview 概要

Don't instantiate an NSURLProtocol subclass directly. Instead, create subclasses for any custom protocols or URL schemes that your app supports. When a download starts, the system creates the appropriate protocol object to handle the corresponding URL request. You define your protocol class and call the registerClass: class method during your app’s launch time so that the system is aware of your protocol. NSURLProtocolサブクラスを直接にインスタンス化しないでください。その代わりに、何らかのあつらえのプロトコルまたはあなたのアプリがサポートするURLスキームに対するサブクラスを作成してください。あるダウンロードが始まる時、システムは適切なプロトコルオブジェクトを作成して、対応するURLリクエストを取り扱います。あなたは、あなたのプロトコルクラスを定義して、registerClass:クラスメソッドをあなたのアプリのもつ起動時間の間に呼び出します、それでシステムはあなたのプロトコルを知っています。

To support the customization of protocol-specific requests, define categories on NSURLRequest and NSMutableURLRequest with any custom API that you need. You can store and retrieve protocol-specific request data by using NSURLProtocol’s class methods propertyForKey:inRequest: and setProperty:forKey:inRequest:. プロトコル特有リクエストのカスタマイゼーションをサポートするには、カテゴリをNSURLRequestNSMutableURLRequest上で、あなたが必要とする何らかのあつらえのAPIで定義してください。あなたはプロトコル特有リクエストデータの格納および回収を、NSURLProtocolのもつクラスメソッドpropertyForKey:inRequest:setProperty:forKey:inRequest:を使うことによって行えます。

Create a NSURLResponse for each request your subclass processes successfully. You may want to create a custom, mutable NSURLResponse class to provide protocol specific information. NSURLResponseをあなたのサブクラスがうまく処理する各リクエストに対して作成してください。あなたは、あつらえの、可変NSURLResponseクラスを作成して、プロトコル特有の情報を提供したいかもしれません。

Subclassing Notes サブクラス作成の注意

When overriding methods of this class, be aware that methods that take a task parameter are preferred by the system to those that do not. Therefore, you should override the task-based methods when subclassing, as follows: このクラスのメソッドをオーバーライドする場合、taskパラメータを取るメソッドは、そうしないものよりシステムによって好まれることを自覚しておいてください。それゆえに、あなたは、サブクラスを作る場合は、タスク基盤のメソッドをオーバーライドするべきです、次のように:

Topics 話題

Creating Protocol Objects プロトコルオブジェクトを作成する

Registering and Unregistering Protocol Classes プロトコルクラスの登録および登録解除

Determining If a Subclass Can Handle a Request サブクラスがリクエストを取り扱えるかどうか決定する

Getting and Setting Request Properties リクエストプロパティの取得と設定

Providing a Canonical Version of a Request リクエストの正準版を提供する

Determining If Requests Are Cache Equivalent リクエストそれらがキャッシュ同等であるかを決定する

Starting and Stopping Downloads ダウンロードの開始と停止

Getting Protocol Attributes プロトコル属性を取得する

Relationships 関係

Inherits From 継承元

See Also 参照

Supporting Custom Protocols あつらえのプロトコルをサポートする