0

出于安全原因,我曾经在移动 safari 上使用匿名器。但是,这有点烦人。如果我搜索了某些内容并单击了链接,那么 google 会返回一条错误消息。你可以试试.. http://proxy2974.my-addr.org/myaddrproxy.php/http/www.google.com.au/(搜索一些东西并点击一个链接——如果你测试它就可以了桌面浏览器.. 但是,如果您在 iPhone 或 iPhone 模拟器上尝试,它将返回http://proxy2974.my-addr.org/myaddrproxy.php/http/url )

所以我决定自己做。我正在做的是从文本字段中获取 URL 并通过匿名器的链接传递它,例如urlString = [NSString stringWithFormat:@"http://proxy2974.my-addr.org/myaddrproxy.php/http/%@", urlString];

但是我仍然面临同样的问题..当我点击谷歌上的链接时,它返回一个错误..所以我想要做的是获取点击的链接,停止加载页面(在它返回错误之前),然后通过匿名器传递它。我该怎么做?谢谢..

- (BOOL)webView:(UIWebView *) sender shouldStartLoadWithRequest:(NSURLRequest *) request navigationType:(UIWebViewNavigationType) navigationType {

    NSLog(@"req: %@",request.URL.absoluteString);


    return YES;
}

req: http://proxy2974.my-addr.org/url?sa=t&source=web&cd=1&ved=0CFMQFjAA&url=%2Fmyaddrproxy.php%2Fhttp%2Fwww.perthnow.com.au%2Ffun-games%2Fleft-brain-vs-right-brain%2Fstory-e6frg46u-1111114517613&ei=GXAsUMaUA7H44QTys4HYDA&usg=AFQjCNGB_zOrrEZC0SKx813XGHB1xi_AlA

req: http://proxy2974.my-addr.org/myaddrproxy.php?proxy_url_sjla67z78f8viz4=url&sa=t&source=web&cd=1&ved=0CFMQFjAA&url=%2Fmyaddrproxy.php%2Fhttp%2Fwww.perthnow.com.au%2Ffun-games%2Fleft-brain-vs-right-brain%2Fstory-e6frg46u-1111114517613&ei=GXAsUMaUA7H44QTys4HYDA&usg=AFQjCNGB_zOrrEZC0SKx813XGHB1xi_AlA

req: http://proxy2974.my-addr.org/myaddrproxy.php/http/url
4

2 回答 2

0

实施

- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType;

在您的 uiwebview 委托中

于 2012-08-16T03:39:20.860 回答
0

Implement this delegate method to retrieve a clicked link in UIWebView:

- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
  if(navigationType == UIWebViewNavigationTypeLinkClicked)
  {
     NSLog(@"req: %@",request.URL.absoluteString);
  }
}
于 2012-08-16T04:24:38.677 回答