Я пытаюсь захватить источник со страницы онлайн, чтобы проанализировать его и поместить информацию в словарь.Асинхронный запрос не дает правильного ответа
Все работает нормально, но данные, которые я получаю, не заполняются. Половина данных только приближается.
Я использую ниже код:
-(void)getEmployeeTrips:(void(^)(NSDictionary *))completion
{
NSString *url;
url =[NSString stringWithFormat:@"%@://%@:%@/%@?dbname=%@&colname=%@",[[NSUserDefaults standardUserDefaults] stringForKey:@"mongoScheme"],[[NSUserDefaults standardUserDefaults] stringForKey:@"mongoHost"],[[NSUserDefaults standardUserDefaults] stringForKey:@"mongoPort"],@"query",[[NSUserDefaults standardUserDefaults] stringForKey:@"mongoDbName"],@"trips"];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];
[request setURL:[NSURL URLWithString:url]];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:[NSJSONSerialization dataWithJSONObject:postDictionary options:kNilOptions error:&error]];
[request setValue:finalAuthString forHTTPHeaderField:@"Authorization"];
[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]);
completion([NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error]);
}];
}
Когда я звоню это завершающие блок на другой класс данных не подходит полностью.
Я пытался с NSUrlConnection
делегировать методы и NSUrlSession
также, но не решил мою проблему.
Есть ли проблемы с моим кодом или с сервера?
Вы можете использовать 'NSURLSessionDataTask' вместо 'NSURLConnection'. Я столкнулся с той же проблемой, когда получил html-файл с сервера. –
@ sailendrak.I пытался с этим, но без изменений – Himanth
Можете ли вы разместить свой NSMutableURLRequest ??? –