4

在我的基于浏览器的应用程序中,我需要为每个 url 设置一个代理,并在 ASIHTTPRequest 的帮助下执行此操作。

我面临的问题是 Web 视图需要双倍的时间来加载页面,可能是因为我在代码中加载了两次页面。

首先,我使用 ASIHTTPRequest 检查状态以确定 ASIHTTPRequest 是否允许加载页面,如果允许,则在 web 视图上加载该 url。这就是我认为问题所在,因为我认为我正在加载 url 两次,这很耗时。

您能否就其他加载页面的方式提出建议,但以支持使用代理设置检查经过身份验证的页面的方式,或为我提供与此问题相关的指南链接?

NSString *response = [NSString stringWithContentsOfFile:
    [theRequest downloadDestinationPath] encoding:[theRequest responseEncoding] error:nil];
    int statusCode = [requestH responseStatusCode];
    if (statusCode == 200) {
        [webV loadRequest:[NSURLRequest  requestWithURL:[requestH url]]];
    }
    else {
        [webV loadHTMLString:response baseURL:[theRequest url]];
    }
4

1 回答 1

1

实现 NSURLConnection ( apple docu ) 的委托方法,并在 connectionDidFinishLoading 中将 url 的内容保存到本地文件,然后使用 loadHTMLString 加载该本地文件。

于 2012-05-30T08:53:57.253 回答