Truc bizarre avec OHURLLoader
J'ai un problème avec OHURLLoader. Quand j'essaye de l'utiliser, il ne se passe rien, comme si la requête ne partait pas, d'ailleurs je ne vois pas de trace sur le serveur.
Par contre le sendAsynchronousRequest: fonctionne.
J'ai mis des points d'arret dans OHURLLoader sur les méthodes du delegate mais le prog ne s'y arrête pas.
J'ai bien vérifié que mon serveur répond (vu que le sendAsynchronousRequest fonctionne).
Ca doit être une connerie car j'ai déjà utilisé OHURLLoader à un autre endroit sans problème.
Une idée ?
Par contre le sendAsynchronousRequest: fonctionne.
<br />
[NSURLConnection sendAsynchronousRequest:oRequest queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *aResponse, NSData *aData, NSError *aError) {<br />
NSLog(@"FINI error=%@", aError);<br />
<br />
}];<br />
<br />
<br />
OHURLLoader* oLoader = [OHURLLoader URLLoaderWithRequest:oRequest];<br />
[oLoader startRequestWithResponseHandler:^(NSURLResponse *response)<br />
{<br />
NSLog(@"1");<br />
}<br />
progress:^(NSUInteger receivedBytes, long long expectedBytes)<br />
{<br />
NSLog(@"2");<br />
}<br />
completion:^(NSData *receivedData, NSInteger httpStatusCode)<br />
{<br />
NSLog(@"3");<br />
}<br />
errorHandler:^(NSError *error)<br />
{<br />
NSLog(@"4");<br />
}];<br />
J'ai mis des points d'arret dans OHURLLoader sur les méthodes du delegate mais le prog ne s'y arrête pas.
J'ai bien vérifié que mon serveur répond (vu que le sendAsynchronousRequest fonctionne).
Ca doit être une connerie car j'ai déjà utilisé OHURLLoader à un autre endroit sans problème.
Une idée ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Tu as vérifié que oLoader n'était pas nil ? Tu es bien sur un iOS>4.0 (NS_BLOCKS_AVAILABLE est donc bien défini par le SDK) ?
Si tu mets des breakpoints, _connection est correctement initialisé, il n'est pas nil à la fin de la méthode ?
Tu exécutes bien ce code dans la main queue / le main thread (ou en particulier dans un thread qui a une NSRunLoop de configurée) ?
En fait le problème ne vient pas directement de ta classe puisque si j'utilise mon propre NSURLConnection asynchrone, ça ne marche pas non plus.
Le ConnexionDelegate n'est pas appelé.
Par contre NSURLConnection sendSynchronousRequest fonctionne.
Le code est appelé depuis applicationDidBecomeActive: