3

我想知道是否可以通过隧道传输 Web 请求,当然还有使用/实现什么。

我已经编写了NSInputStreamNSOutputStream的子类来通过我的自定义代理服务器发送和接收数据,这对于套接字连接非常有效。

我试图实现UIWebViewNSURLRequest的代表,但我无法捕获从UIWebView发出的所有 HTTP 请求。

先感谢您。

4

1 回答 1

0

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

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

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

于 2011-03-16T10:40:18.347 回答