Это может быть дублирующий вопрос, но я не мог найти ответ при поиске. Итак, как мне отправить данные на URL? Heres, что я получил до сих пор:iphone SDK: как отправить данные в URL?
NSString *url = @"https://localhost/login.php";
NSURL *urlr = [NSURL URLWithString:url];
NSMutableURLRequest *urlre = [[NSMutableURLRequest alloc] init];
[urlre setURL:[NSURL URLWithString:url]];
NSUserDefaults *defs = [NSUserDefaults standardUserDefaults];
NSString *user = [defs stringForKey:@"User"];
NSString *pass = [defs stringForKey:@"Pass"];
NSInteger *version = [defs integerForKey:@"Version"];
NSString *bodyData = [[NSString alloc] initWithFormat:@"user=%@&password=%@&version=%d",user,pass,version];
NSData *body = [bodyData dataUsingEncoding:NSASCIIStringEncoding];
NSURLResponse *response = nil;
NSError *error = nil;
[urlre setHTTPMethod:@"POST"];
[urlre setValue:[[NSString alloc] initWithFormat:@"%d",[body length]] forHTTPHeaderField:@"Content-Length"];
[urlre setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[urlre setHTTPBody:body];
NSData *dataThis = [NSURLConnection sendSynchronousRequest:urlre returningResponse:&response error:&error];
if(dataThis)
{
NSLog(@"Connect Success");
} else {
NSLog(@"%@",[error localizedDescription]);
}
Правильно ли это? В моем
-(void) connection:(NSURLConnection*)connection didReceiveData:(NSData *)data
Событие, я ничего не получаю. Даже в didFinishLoading он ничего не получает с NSLog. Пожалуйста помоги.
Хм, слишком много ошибок компиляции. Я попытался настроить его, хотя. –
Я думаю, что ваши ошибки компиляции связаны с тем, что ASIHTTP не совместим с ARC. То, что вы делаете, это щелкнуть по вашему проекту -> название проекта в разделе TARGETS -> BUILD PHASES -> COMPILE SOURCES, а затем выбрать все файлы ASIHTTP, нажать Enter, появится диалоговое окно, вставьте его в поле flags компиляции -fno -objc-arc. Тогда вы должны быть добры. – sbarow