이봐, 여기에 약간 문제가있다. 이 코드HTML 태그가 JSON 파일을 유효하지 않게합니까?
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSError *error = nil;
NSDictionary *JSONdata = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingAllowFragments error:&error];
self.data = JSONdata;
[self.tableView reloadData];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}];
와 AFHTTPRequestOperation
를 사용하여 JSON 파일을로드 할 수 있지만 내가 여기 someurl.com/json.html 에서이 JSON을로드 할 때 JSONdata가 null 된 것은 내가 시도 JSON
{
"status": 200,
"results": [
{
"author": {
"username": "user1",
"full_name": "User 1"
}
}
]
}
<!-- This document saved from someurl.com/json.html -->
입니다 그 파일을 다운로드해서 loaclhost에서 접근하고, 여전히 null을 얻었습니다. 그런 다음 html 태그 <!-- This document saved from someurl.com/json.html -->
을 수동으로 제거한 다음 JSON을로드 할 수 있습니다.
내 결론은 JSON을 유효하지 않게 만드는 html 태그입니다. JSON 파일에서 해당 태그를 제거하려면 어떻게해야합니까? NSJSONSerialization에 코드를 추가해야합니까?
아. 소스 JSON으로 아무것도 할 수 없기 때문에 어떻게 처리해야합니까? 전체 파일을 다운로드하고 json 만 분리해야합니까? –
예. json 공급자를 제어 할 수없는 경우 "깨진"데이터를 유효한 json으로 마사지해야합니다. 하지만 정말로 ... 공급자는 깨진 시스템을 고쳐야합니다. –
이제 html 태그에서 json을 분리 할 수 있지만 결과는 NSString입니다. 그것을 nsdictionary로 변환하는 방법? –