Domanda

Quando si tenta di inviare una richiesta POST a un sito specifico la stringa provo a trasmettere viene tagliato fuori. Quando controllo la lunghezza della stringa in Xcode è lunga circa 55000 caratteri. La quantità di caratteri ricevuti sul sito è di circa 4500. Questo è il mio codice:

-(IBAction)convert {

NSString *rosterText = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.innerHTML"];

NSString *params = [[NSString alloc] initWithFormat:@"roster=%@", rosterText];

NSString *paramsLength = [NSString stringWithFormat:@"%d", [params length]];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://www.thesite/index.php"]];

[request setHTTPMethod:@"POST"];

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-type"];

[request setValue:paramsLength forHTTPHeaderField:@"Content-Length"];

[request setHTTPBody:[params dataUsingEncoding:NSUTF8StringEncoding]];

NSLog(@"length = %@",paramsLength);

[webView loadRequest:request]; 

[params release];

[request release];

}

Ho un modulo sul sito dove è possibile manualmente inserire la stringa e che tutto funziona benissimo, quindi mi sembra qualcosa sta andando storto nella codifica dei dati POST.

Qualcuno sa che cosa va male qui? Proprio non riesco a capirlo!

Grazie mille!

È stato utile?

Soluzione

Non sono sicuro, che cosa sta andando male, ma io suggerirei di utilizzare ASIHTTPRequest .

  

ASIHTTPRequest è un facile da usare   wrapper API CFNetwork che   rende alcuni degli aspetti più noiosi   di comunicare con i server web   Più facile. E 'scritto in Objective-C   e lavora a Mac OS X e iPhone   applicazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top