Я получаю данные от Yummly API, и я хотел бы использовать его, как если бы это были сериализованные данные JSON. Однако в настоящее время это строка, и я не могу понять, как правильно ее преобразовать. Код выглядит следующим образом:Преобразование NSString в NSData для использования в XCODE
NSString *searchParameters = @"basil"; //should be from text box
//NSError *error1 = nil;
NSString *searchURLName = [@"http://api.yummly.com/v1/api/recipes?_app_id=myAPIId&_app_key=myAPIkey&" stringByAppendingString:searchParameters];
NSURL *searchURL = [NSURL URLWithString:searchURLName];
NSString *searchResults = [NSString stringWithContentsOfURL:searchURL encoding:NSUTF8StringEncoding error:nil];
// Here, the search results are formatted just like a normal JSON file,
// For example:
/* [
"totalMatchCount":777306,
"facetCounts":{}
]
*/
// however it is a string, so I tried to convert it to data
NSData *URLData = [searchResults dataUsingEncoding:NSUTF8StringEncoding];
URLData = [URLData subdataWithRange:NSMakeRange(0, [URLData length] - 1)];
_searchArray = [NSJSONSerialization JSONObjectWithData:URLData options:NSJSONReadingMutableContainers error:nil];
Где-то в течение последних четырех строк, он не делал то, что должен был, и нет никаких данных в объекте данных. Любые советы или быстрые подсказки в правильном направлении очень ценятся! Спасибо you1
Почему вы делаете subdataWithRange? И почему вы не снабжаете указатель NSError параметру 'error:' JSONObjectWithData ?, а затем проверяете полученное сообщение об ошибке? ?? –