Я не знаком с подробностями вашего веб-сервиса, но приведенный ниже код может быть источником вашей проблемы (или хотя бы одного из них!)
[request setValue:jsonString forHTTPHeaderField:@"json"];
responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&theResponse error:&theError];
[request setHTTPBody:responseData];
Вы отправляете запрос раньшеустановка тела, которое, как я полагаю, должно включать ваше jsonString
содержимое.Кроме того, вы присваиваете jsonString
полю заголовка, вы уверены, что это то, что вы хотите?Вот предположение о том, что может сработать:
[request setValue:@"application/json" forHTTPHeaderField:@"Content-type"];
[request setHTTPBody:jsonString];
responseData = // rest of your code here....
Я предлагаю вам хорошо просмотреть этот код, так как на данный момент это беспорядок!У вас есть два NSURLConnection
запроса, один asynchronous
и один synchronous
, довольно сложно понять, что / почему вы все это делаете, поэтому проверьте документацию Apple для NSURLConnection и приведите в порядокВаш код ...
[РЕДАКТИРОВАТЬ]
Вот мое предложение для вас:
NSError *theError = nil;
NSArray *keys = [NSArray arrayWithObjects:@"UserId", @"Password", nil];
NSArray *objects = [NSArray arrayWithObjects:@"rajin.sasi", @"abhi1551", nil];
NSDictionary *jsonDictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
NSString *jsonString = [jsonDictionary JSONRepresentation];
NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://192.168.0.83:8082/WebServiceProject/AcessWebservice?operation=login"]];
[request setValue:jsonString forHTTPHeaderField:@"json"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:jsonData];
NSURLResponse *theResponse =[[NSURLResponse alloc]init];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&theResponse error:&theError];
NSMutableString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSDictionary *jsonDictionaryResponse = [string JSONValue];
[string release];
[theResponse release];