2009-08-01 68 views
1

假设我有一个具有UIWebView的iPhone应用程序。是否有可能在iPhone上编写我自己的HTTP代理服务器,然后让UIWebView中加载的每个页面都通过此代理?在运行iPhone的本地代理服务器上使用UIWebView

我想有两个主要部分:

  1. 写在iPhone上的HTTP代理服务器
  2. 确保从UIWebView的所有请求都通过我自己的代理

如何困难会它是写这样一个代理服务器?需要做什么?我知道这可能是非常天真的想法,但听起来很简单,你不是基本上只是从客户端获取消息并将它们路由到服务器?什么使代理服务器如此复杂?

如果您想要修改发送到UIWebView的请求的HTTP标头,这可能很有用。因为,[webView:shouldStartLoadWithRequest:navigationType:]中的(NSURLRequest *)request参数实际上是(NSMutableURLRequest *),但如果修改其中的任何值,则该参数不起作用(太糟糕了,这并不那么简单)。

回答

1

您可能更适合在iPhone应用程序之外创建代理服务器并在某处在线托管它。然后,您可以修改shouldStartLoadWithRequest中的url以实际从代理服务器加载。

相关问题