제 3 자 서비스에 전달 된 우편 번호에서 반환 된 간단한 JSON 배열이 있습니다. 해결할 수있는 connectionDidFinishLoading 오류
나는 결과를 역 직렬화하려고하고 내가 잘못 무슨 일이 일어나고 있는지 잘 모르겠어요 알 수없는 오류가 발생합니다.여기는 제 연결의 DidFinishLoading 메서드입니다.이 메서드는 오래된 것으로서 발생하지만 항상 실패합니다 ... 마지막 경우에 오류가 발생합니다. 아이디어?
-(void) connectionDidFinishLoading:(NSURLConnection *)connection {
NSLog(@"connectionDidFinishLoading...");
self.zipCodes = [NSMutableArray array];
NSError *error = nil;
id jsonObject = [NSJSONSerialization JSONObjectWithData:receivedData options:NSJSONReadingAllowFragments error:&error];
if (jsonObject != nil && error == nil) {
NSLog(@"Successfully deserialized...");
if ([jsonObject isKindOfClass:[NSDictionary class]]) {
NSDictionary *deserializedDictionary = (NSDictionary *)jsonObject;
NSLog(@"Deserialized JSON Dictionary = %@", deserializedDictionary);
for (NSDictionary *item in jsonObject) {
NSString *city = [item objectForKey:@"adminName2"];
NSString *stateAbbreviation = [item objectForKey:@"adminCode1"];
NSString *postalCode = [item objectForKey:@"postalCode"];
NSString *distance = [item objectForKey:@"distance"];
NSString *country = [item objectForKey:@"country"];
NSString *stateName = [item objectForKey:@"stateName"];
ZipCodes *zipCode = [[ZipCodes alloc] initWithName:city stateAbbrev:stateAbbreviation postalCode:postalCode distanceFromGPSZip:distance country:country stateFullName:stateName];
[self.zipCodes addObject:zipCode];
}
}
else if ([jsonObject isKindOfClass:[NSArray class]]){
NSArray *deserializedArray = (NSArray *)jsonObject;
NSLog(@"Deserialized JSON Array = %@", deserializedArray);
}
else {
/* Some other object was returned. We don't know how to deal
with this situation as the deserializer returns only dictionaries or arrays */
}
}
else if (error != nil){
NSLog(@"An error happened while deserializing the JSON data.");
}
}
당신이 NSLog 할과 된 JSONObject가 저장되는 정보를 볼 수 :이 자신의 예를 들어 URL입니까? – yeesterbunny