Если вы в порядке с блокировкой потока, для которого вы делаете запрос, это примерно так же просто, как и получается.
NSString *postBody = [NSString stringWithFormat:@"param1=%@¶m2", param1value, param2value];
NSData *postData = [postBody dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:targetURL];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];
NSURLResponse *response = nil;
NSError *error = nil;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
Несколько предостережений:
- Это выполнит синхронный (блокирующий) запрос, поэтому либо выполните его в фоновом потоке, либо изучите методы делегата NSURLConnection.
- Данные POST должны быть в кодировке URL, поэтому вам может потребоваться выполнить некоторую предварительную обработку значений параметров.
- Перенаправления будут происходить автоматически до тех пор, пока не будет введено 200 OK или не возникнет ошибка.