WebKit WebView を使用するアプリケーションがあり、カスタム URL プロトコルを使用してこの WebView に読み込まれた URL を別の HTTP URL にマップしたいと考えています。たとえば、次のように読み込んでいるとします。
custom://path/to/resource
内部的に実際にロードしたい:
http://something-else.com/path/to/resource
言い換えれば、カスタム プロトコルはほぼ省略形として機能します。ただし、-webView:resource:willSendRequest:redirectResponse:fromDataSource: を使用することはできません。これは、単に一方から他方にリダイレクトするのではなく、これが問題の URL であると WebKit に実際に信じさせたいためです。
これまでのところ、カスタム NSURLProtocol サブクラスの使用を試みてきました。ただし、少なくとも私の理解では、NSURLProtocol サブクラスの startLoading メソッドで実際の読み込みを自分で行う必要があるため、これは最初に考えたよりも複雑です。既存の HTTP プロトコル ローダーに作業を渡すだけの方法が欲しいのですが、これを行う簡単な方法が見つかりません。
これに関する推奨事項、またはこの問題を解決する別の方法はありますか?
ありがとう!