【问题标题】:Three20 and Unsigned CertificatesThree20 和未签名的证书
【发布时间】:2011-08-16 13:07:45
【问题描述】:

我正在使用 Three20 库重写我的应用程序。在我的应用程序中,我打开了指向各种网站的链接,其中一些包含具有未签名证书的网站。

在我的非three20 应用程序中,这是我加载此类网站的方式(使用 ASIHTTPRequest):

//=======================================================================================
// Once the correct URL is set, load it using ASIHTTPRequest
-(void)loadURL:(NSURL *)localURL
{
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];

    if(regularLoad)
    {
    NSURLRequest *req = [[NSURLRequest alloc] initWithURL:localURL];
    [webView loadRequest:req];
    regularLoad = false;
} else {
    ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:localURL];
    [request setValidatesSecureCertificate:NO];
    [request setDelegate:self];
    [request startAsynchronous]; 
    [request release];
    }
}

//=======================================================================================
// Delegate method for ASIHTTPRequest 
- (void)requestFinished:(ASIHTTPRequest *)request
{
    // Use when fetching text data
    NSString *responseString = [request responseString];
    webView.scalesPageToFit = YES;
    [webView loadHTMLString:responseString baseURL:request.url];
}

其中的主要部分是 webView 的 loadHTMLString 方法,这是 Three20 TTWebController 所没有的。

有人能在 Three20 中做到这一点吗?我已经在网上和这里搜索过,但没有找到解决方案。

感谢您的帮助!

【问题讨论】:

    标签: iphone ios ssl webview three20


    【解决方案1】:

    您可以扩展 TTWebController 类并自己添加缺少的 loadHTMLString 函数。

    @interface WebController : TTWebController
    
    /////////////////////////////////////////////////////////////////////////////////////////////
    @implementation WebController
    
    - (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL {
      [_webView loadHTMLString:string baseURL:baseURL;];
    }
    

    您需要使用 init 函数创建 Web 控制器,而不是使用 TTNavigator 调用它,因此您将获得对它的引用

    【讨论】:

    • 将其添加到three20 作为改进可能是有意义的。问题是使用 TTNavigator 调用该函数将是一个问题..
    猜你喜欢
    • 1970-01-01
    • 2015-10-19
    • 2020-03-16
    • 1970-01-01
    • 2018-04-19
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多