【发布时间】:2015-09-30 06:34:00
【问题描述】:
我正在使用 POST 方法获取数据。我已经成功检索到所有数据。在 UI 中显示它需要很长时间,但我可以立即在控制台上打印它,我的代码是
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:@"http://www.xxxyyy.com/v1/api/client/authorize"]];
[request setHTTPMethod:@"POST"];
[request setValue:@"ABCD" forHTTPHeaderField:@"Authkey"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
NSURLSession *session = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
[[session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error)
{
NSString *requestReply = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
[request setValue:@"application/json;charset=UTF-8" forHTTPHeaderField:@"Authkey"];
NSData* data1 = [requestReply dataUsingEncoding:NSUTF8StringEncoding];
jsonReturnArray = [NSJSONSerialization JSONObjectWithData:data1 options:NSJSONReadingAllowFragments error:&error];
NSArray *array = [jsonReturnArray copy];
[self rec:array];
NSString *phoneNumber=[NSString stringWithFormat:@"%@",[jsonReturnArray valueForKey:@"phone"]];
lblPhoneNumber.text = phoneNumber;
NSString *Address=[NSString stringWithFormat:@"%@ %@ %@,CA %@",[jsonReturnArray valueForKey:@"street1"],[jsonReturnArray valueForKey:@"street2"],[jsonReturnArray valueForKey:@"city"],[jsonReturnArray valueForKey:@"postalcode"]];
lblAddress.text=Address;//takes long time to display
NSLog(@"%@",Address);//immeaditely print
strlatitude=[jsonReturnArray valueForKey:@"latitude"];
strlongitude=[jsonReturnArray valueForKey:@"longitude"];
[self Map:(MKMapView *)mapLocation didUpdateUserLocation:(MKUserLocation *)nil];//method call
}] resume];
【问题讨论】:
-
看到这个链接你的答案stackoverflow.com/questions/15749486/…
-
我收到了所有数据,但显示我的问题需要很长时间
-
从网络检索数据并将其显示在 UI 上需要多长时间。你能告诉我吗?
-
它立即检索数据但需要1分钟才能显示它
-
那么它可能是 UI 问题,而不是关于 POST 请求。它不应该花费时间(据我所知)