2010-04-28 25 views
9

ASIHTTPRequest HTTPS bağlantılarını destekliyor mu? Bağlantım şu anda bir HTTPS Bağlantısı'nı denediğimde HTTP bağlantısı ve hataları için çalışıyor. referans içinASIHTTPRequest - HTTPS

[request setValidatesSecureCertificate:NO] işleri -

-(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; 
} 

sayesinde
Teja

cevap

17

Whoops, üzgünüm, bunu anladım (requestFailed içine Goes ve bana ASIHTTPErrorRequestDomain verir). Bu adamlar

Teşekkür - http://www.iphonedevsdk.com/forum/iphone-sdk-development/29417-asihttprequest-library-works-https.html

DÜZENLEME: Bu bazı upvotes oluyor, ben sadece bu geçerli bir SSL sertifikaları için en iyi yaklaşım olmayabileceğini eklemek istiyorum. Kullandığım kişi kendinden imzalı bir sertifikaydı, bu yüzden bu iyiydi.

+3

"Verilerin yakalanıp şifreli/ortadaki adam saldırısı yoluyla değiştirilip değiştirilmediğini umursamadım, bu yüzden kendinden imzalı bir sertifika iyiydi". :-) – JosephH

+0

Haha doğru yeterli, aslında 10 dolar harcama ve bir sertifika almaktan biraz daha karmaşıktır. Sertifikaları GoDaddy'den aldık, ancak QA sunucumuzdaki sertifikanın, bazı tarayıcılarda uyarılara ve ASIHTTPRequest kullanırken düz reddetmeye yol açan bir ana makine adı uyuşmazlığı vardı. Kimse düzeltmek için yeterli bakmadı ve işte buradayız :) –

+0

Şaşırtıcı dostum. Saatleri kurtardınız .. –