2013-04-17 4 views
1

J'envoie une requête, mais n'appelle pas la méthode connectionDidFinishLoading, pourquoi?connectionDidFinishLoading n'est pas appelé, pourquoi?

- (void)startHttpRequestWithCookie:(NSArray *)authCookies 
{ 
    NSURL *url = [NSURL URLWithString:@"http://test.test/mbox.php"]; 
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; 

    NSDictionary* headers = [NSHTTPCookie requestHeaderFieldsWithCookies:authCookies]; 
    [request setHTTPShouldHandleCookies:NO]; 
    [request setHTTPMethod:@"POST"]; 
    [request setValue:@"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" forHTTPHeaderField:@"Accept"]; 
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
    [request setAllHTTPHeaderFields:headers]; 
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 

    if (connection) { 
     // Create the NSMutableData to hold the received data. 
      responseData = [NSMutableData new]; 
    } else { 
     // Inform the user that the connection failed. 
    } 
} 

    - (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { 
     [responseData setLength:0]; 
    } 

- (void) connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { 
     [responseData appendData:data]; 
    } 

- (void) connectionDidFinishLoading:(NSURLConnection *)connection { 
     NSString* responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; 
     NSLog(@"%@", responseString); 
     NSError *error = nil; 
     NSData* data = [responseString dataUsingEncoding:NSUTF8StringEncoding]; 

etc.. 
    } 

Ceci est mon code, je ne comprends pas pourquoi n'est pas appelé connectionDidFinishLoading

je vous remercie beaucoup pour votre temps

+2

vérifiez si les autres méthodes déléguées sont appelées; la connexion pourrait-elle échouer? Avez-vous implémenté didFailWithError? –

+0

Merci. Erreur "Échec de la connexion! Erreur - trop de redirections HTTP. Domaine d'erreur = NSURLErrorDomain Code = -1007" trop de redirections HTTP "UserInfo = 0x7592ad0" – Alexander

Répondre

2

Essayez la mise en œuvre - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response et vérifier les valeurs renvoyées dans l'objet de réponse.

Questions connexes