2010-04-28 64 views
9

ASIHTTPRequest是否支持HTTPS连接?如果我尝试使用HTTPS连接,我的连接现在可用于HTTP连接和错误。 (进入requestFailed并给了我一个ASIHTTPErrorRequestDomain)ASIHTTPRequest - HTTPS

-(void) getData 
{ 

av.hidden = NO; 
[av startAnimating]; 

NSString *urlString = [IP stringByAppendingString:@"Method1"]; 
NSURL *url = [NSURL URLWithString:urlString]; 
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
NSLog(@"URL = %@",url); 
[request setRequestMethod:@"POST"]; 
[request setPostValue:@"val1" forKey:@"key1"]; 
[request setPostValue:@"val2" forKey:@"key2"]; 
[request setDelegate:self]; 
[request startAsynchronous];  
} 

- (void)requestFinished:(ASIHTTPRequest *)request 
{ 
    // Use when fetching text data 
    //NSString *responseString = [request responseString]; 

    // Use when fetching binary data 
    NSData *responseData = [request responseData]; 
    [self parseData:responseData]; 

    [av stopAnimating]; 
    av.hidden = YES; 
} 


- (void)requestFailed:(ASIHTTPRequest *)request 
{ 
    NSError *error = [request error]; 
    [av stopAnimating];  
    av.hidden = YES; 
} 

感谢,
Teja公司

回答

17

哎呦,对不起,想通了 -

[request setValidatesSecureCertificate:NO]作品以供参考。

感谢这些家伙 - http://www.iphonedevsdk.com/forum/iphone-sdk-development/29417-asihttprequest-library-works-https.html

编辑:由于这是获得一些upvotes,我只是想补充一点,这可能不是有效的SSL证书的最佳方法。我使用的是自签名证书,所以这很好。

+3

我认为你的意思是“我不在乎数据是否被攻击者通过中间人攻击拦截/解密/更改,所以自签名证书没有问题”。 :-) – JosephH 2011-08-22 19:03:49

+0

哈哈真的够了,它实际上比不花10美元和获得证书要复杂一点。我们确实从GoDaddy购买了证书,但是我们的QA服务器上的证书存在主机名不匹配,导致在某些浏览器上发出警告,并在使用ASIHTTPRequest时发生明显拒绝。没有人照顾足够修复它,在这里,我们:) – 2011-08-22 19:11:13

+0

令人惊叹的哥们。您节省了时间.. – 2012-03-03 10:49:13