2009-05-23 7 views
0

J'essaie de me connecter à un serveur HTTP C# avec une application iPhone. Code assez simple jusqu'à présent:Connexion réinitialisée par un pair avec un iPhone NSURLConnection

NSData *requestData = [ NSData dataWithBytes: [ requestMessage UTF8String ] length: [ requestMessage length ] ]; 
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:infoURL]]; 
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"]; 
    [request setHTTPMethod: @"POST"]; 
    [request setHTTPBody: requestData]; 
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 

Le serveur reçoit la demande, envoie une réponse et met fin à la connexion. L'iPhone signale la connexion réinitialisée par un pair.

Pour être en mesure de frapper le serveur dans Firefox sur mon bureau, je dois aller dans son preffs avancé et désactivé persistant. La raison, je suppose, est parce que je termine la connexion juste après que j'ai envoyé la réponse. Je le fais parce que je ne veux pas réutiliser les connexions plus tard. De toute façon, pour désactiver keep-alive lorsque vous utilisez NSURLConnection sur l'iPhone, ou des suggestions sur la modification de mon code .Net?

Répondre

0

Cela semblait être un bug dans la version bêta de la version iOS que j'utilisais. Une mise à jour future et le même code fonctionnaient très bien.

1

Pourquoi ne pas simplement ajouter une connexion: Près de la demande HTTP/1.1?

+0

J'ai essayé cela et apparemment il est surchargé par NSURLConnection. –

Questions connexes