当我尝试向特定站点发送 POST 请求时,我尝试发送的字符串被截断。当我在 Xcode 中检查字符串的长度时,它大约有 55000 个字符长。网站上收到的字符数约为 4500。这是我的代码:
-(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];
}
我在网站上有一个表单,您可以在其中手动插入字符串并且一切正常,所以在我看来,POST 数据的编码出现了问题。
有人知道这里出了什么问题吗?简直想不通!
非常感谢!