当UIWebView尝试加载网页时,有没有一种方法可以跟踪单个资源,如图像,js,css加载到webview中。基本上我正在寻找回调。是否在ios中有回调,当发出图像请求时会触发该回调,而在下载图像时会触发另一个回调。

最佳答案

如果使用NSURLCache,您将获得随网页下载的每个文件的回调。

基本上,您需要对NSURLCache类进行子类化并将其设置为共享缓存,如下所示:

[NSURLCache setSharedURLCache:cache];

在您的子类中,您将需要重写- (NSCachedURLResponse *)cachedResponseForRequest:(NSURLRequest *)request方法来添加您的行为。将针对网页中加载的每个资源调用此方法。

您可以查看Apple Sample代码项目URL CacheInfo或github上的SDURLCache项目,这些项目扩展了默认的NSURLCache行为。

10-08 18:02