3

我有一个创建 NSURLRequest 的方法。如果我在 UIWebView 中加载这个 NSURLRequest,我会使用- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType.

如何在不将我的请求加载到 UIWebView 的情况下拦截此重定向?(我一点也不想要)

4

3 回答 3

3

好吧,你必须先告诉我们你是如何加载它的。你在用NSURLConnection吗?然后使用-connection:willSendRequest:redirectResponse:委托方法。请务必阅读文档以了解何时调用它。它通常被调用只是因为框架在实际与任何东西通信之前调整了您的请求,因此并非每次调用都是重定向。

于 2012-06-01T08:51:47.307 回答
1

如果我理解你想捕捉请求而不是在 webview 中加载它。如果那是您想要做的,只需让您的方法返回 NO。

           - (BOOL)webView:(UIWebView *)webView 
shouldStartLoadWithRequest:(NSURLRequest *)request 
            navigationType:(UIWebViewNavigationType)navigationType.
于 2012-06-01T08:33:53.293 回答
0

您可以子类化NSURLCache以拦截任何 url 请求。

这个例子:http ://cocoawithlove.com/2010/09/substituting-local-data-for-remote.html演示了使用子类来加载本地文件代替远程文件,但你也应该能够使用类似的子类来取消请求或执行您需要的其他操作。

于 2012-06-06T17:28:37.997 回答