現在、私はURLSessionDataTask
をURIにしようとしています。 URIがリダイレクトされるため、リダイレクトされた(最終的な)URLが何であるかを調べる必要があります。これを行うために、私はURLSessionDataDelegate
にwillPerformHTTPRedirection
メソッドを使用したい(このメソッドは、そのスーパークラスURLSessionDelegate
から継承されます)URLSessionDataTaskにデリゲートを割り当てる方法は?
問題がある:私は、デリゲートを割り当てるURLSessionDataTask
のプロパティを見つけることができませんでした。私の理解から
、クラス(例えば、class A
)は委譲クラス(たとえば、class ADelegate
)を持っていれば、また、通常、接尾辞delegate
と命名されclass A
内部プロパティをそこに持っている必要があります。デリゲートのメソッドを実装する場合は、デリゲートクラスのインスタンスをインスタンス化し、それをデリゲートプロパティに割り当てます。例えば:
var instanceA = A()
var instanceADelegate = ADelegate()
instanceA.delegate = instanceADelegate
私の理解は間違っていますか? URLSessionDataDelegate
にメソッドを実装し、URLSessionDataTask
の内部で使用する正しい方法は何ですか?
私はwillPerformHTTPRedirection'はURLSessionTaskDelegate' 'に実際にある'だと思います。これを 'URLSession'にどのように割り当てるのですか?これを 'URLSession.shared'に設定しますか?あれば、どうですか? –
@JoshParadroidこのページ内の "delegate"という用語については、docs https://developer.apple.com/documentation/foundation/urlsession検索を参照してください。 – matt
今後の参考として、デリゲートはURLSessionのコンストラクタで設定されています。 –