NSURLConnection
및 NSJSONSerialization
을 사용하여 JSON API의 데이터를 다운로드 중입니다. JSON은 모두 &
을 HTML 앰퍼샌드 리터럴과 같이 반환합니다 : &
.JSON API의 iOS 인코딩 문자열
UTF-8에서 유니 코드로 서버에서 제대로 인코딩되어야하고 &
으로 수신되었거나 그 작업을 수행해야하는 경우 궁금합니다. 나는이 방법은 하나 또는 다른 수의 JSON
사양의 요구 사항이 믿지 않는
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:api_url]];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[NSURLConnection sendAsynchronousRequest:request
queue:queue
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
// do work
}];
필자의 경우 API가 문자를 올바르게 인코딩하지 않았습니다. 맞습니까? API가 올바른'&'문자를 받기 위해 UTF-8을 사용하여 인코딩해야합니까? 데이터에는 HTML 마크 업이 없으므로 왜 API 개발자에게 '&'이 있는지 잘 모르겠습니다. – darksky
올바른데, JSON은 유니 코드로되어 있습니다. API에는 이스케이프 처리 된 HTML & 문자 시퀀스 대신 & 문자가 포함될 수 있습니다. 콘텐트를 직접 제공 한 웹 응용 프로그램에서 콘텐트를 사용 중이기 때문에/돌아 오는 &을 반환한다고 가정합니다. –