在iPhone上隧道发送Web请求

时间:2011-03-16 08:32:54

标签: iphone uiwebview nsurlrequest nsinputstream nsoutputstream

我想知道是否可以挖掘网络请求,当然还有使用/实施的内容。

我已经编写了 NSInputStream NSOutputStream 的子类来发送&通过我的自定义代理服务器接收数据,该服务器非常适用于套接字连接。

我已尝试实现 UIWebView NSURLRequest 的委托,但我无法捕获从 UIWebView 发出的所有HTTP请求

提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用类别来捕获所有相关的方法调用(下面的模板)。但是要注意龙,并确保在执行此操作之前考虑使用系统代理路由。

UIWebView + PrivateProxy.h

@interface UIWebView (PrivateProxy) 
       - (void)loadRequest:(NSURLRequest *)request;

@end

的UIWebView + PrivateProxy.m

@implementation UIWebView (PrivateProxy) 
   - (void)loadRequest:(NSURLRequest *)request {
       if(request.something ....) {
          // handle yourself ...
       } else { 
          [super loadRequest:request]; // use stanadrd implementation
       }
   }
@end

当然,您可能必须覆盖更多方法,例如重装,停止加载等