iPhoneで実行されているローカルプロキシサーバーでUIWebViewを使用する
質問
UIWebViewを備えたiPhoneアプリがあるとします。 iPhoneで独自のHTTPプロキシサーバーを作成し、UIWebViewに読み込まれているすべてのページをこのプロキシに通すことは可能ですか?
主に2つの部分があると思います:
- iPhoneでHTTPプロキシサーバーを作成する
- UIWebViewからのすべてのリクエストが自分のプロキシを通過することを確認する
このようなプロキシサーバーを作成するのはどれほど難しいでしょうか?何をする必要がありますか?これはおそらく私にとって非常に単純なことだと思いますが、かなり単純に聞こえますが、基本的にクライアントからメッセージを取得してサーバーにルーティングするだけではないのですか?プロキシサーバーがこれほど複雑になるのはなぜですか?
これは、UIWebViewに送信されるリクエストのHTTPヘッダーを変更する場合に役立ちます。なぜなら、 [webView:shouldStartLoadWithRequest:navigationType:]
の(NSURLRequest *)request
パラメーターは実際には(NSMutableURLRequest *)
であるためです。値を変更しても機能しません(残念なことに、それほど単純ではありませんでした)。
解決
おそらく、iPhoneアプリケーションの外部にプロキシサーバーを作成し、どこかでオンラインでホストする方が良いでしょう。次に、shouldStartLoadWithRequestのURLを変更して、プロキシサーバーから実際にロードします。
所属していません StackOverflow