2012-10-03 56 views
0

我试图从https地址下载文件。它使用http工作正常,但它不会为https做到这一点。我将在下面发布我的当前代码,但出于个人目的,我不想发布用于该URL的IP地址,因此在它的位置我将放置“ipAddress”。我应该提到https是来自自签名证书。iOS从https地址下载tar文件

-(void)downloadPDF: (NSInteger)numDay { 

NSString *homeDir = NSHomeDirectory(); 

NSString *filePath = [NSString stringWithFormat: @"%@/%@%@%@", homeDir, @"Documents/", @"File", @".tar"]; 
NSString *dirPath = [NSString stringWithFormat: @"%@/%@", homeDir, @"Documents/"]; 
    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@", @"ipAddress", @'File", @".tar"]]; 

NSData *urlData = [NSData dataWithContentsOfURL:url]; 
[urlData writeToFile:filePath atomically:YES]; 
[mywebview loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:filePath]]]; 

} 

我试过很多东西其他东西,从使用NSURLConnection的以下载整个库,但我一定是失去了一些东西。我也有:

- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge{ 

} 

在我的应用程序委托.m文件在其他文件中提到。任何帮助将不胜感激,如果您需要更多信息,请在评论中告诉我。

回答

0

https要求具有完全限定的域名地址(FQDA)。它不适用于IP。

+0

这是仅适用于iOS的东西吗?我可以从浏览器下载有问题的项目,甚至可以在我的iPad上下载。 –

+0

这是https的东西。 ssl证书中嵌入了FQDN,所以如果您指向的url不匹配,它应该会失败。 – Justin