2010-06-11 9 views
1

J'essaie de faire un appel Web avec l'iPhone. Je l'ai fait avant et ça fonctionne bien mais maintenant je ne peux pas le faire fonctionner. Je suis en train d'utiliser l'appel de méthode suivante, qui dit la documentation est availble dans la version 2.0 et versions ultérieures:NSMutableRequest problème skd

- (void)addValue:(NSString *)value forHTTPHeaderField:(NSString *)field; 

Je cherche à construire pour la version 3.2 et 4.0.

NSMutableURLRequest *request = [NSURLRequest 
           requestWithURL:url 
           cachePolicy:NSURLRequestReloadIgnoringCacheData 
           timeoutInterval:30]; 

[request addValue:@"0" forHTTPHeaderField:@"Content-Length"]; 

L'erreur que je reçois est une erreur d'exécution qui dit

"-[NSURLRequest addValue:forHTTPHeaderField:]: unrecognized selector sent to instance 0x600e0c0" 

Quelqu'un peut-il me dire ce que je suis absent qui arrête ce code de travail?

Merci.

Répondre

2

Vous initialisez une requête NSURLRequest au lieu d'une requête NSMutableURLRequest. Vous obtenez probablement un avertissement du compilateur à ce sujet mais l'exécution force une distribution à la super classe immuable. Cela fonctionne jusqu'à ce que vous essayiez d'envoyer un message que la super classe immuable n'a pas.

+0

Ou pour être plus direct: remplacez NSURLRequest par NSMutableURLRequest –