2011-04-21 53 views
0

我正在使用TouchJSON。拨打我的Rails应用程序以获取localhost:3000/posts.json上的所有“帖子”。这将返回一个JSON数组,由方括号包围。我目前设置为将jsonString转换为NSDictionary,但由于方括号而失败。如何用TouchJSON解析JSON数组?

NSString *jsonString=[self jsonFromURLString:@"http://localhost:3000/posts.json"]; 
    NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; 
    NSError *error = nil; 
    self.dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:jsonData error:&error]; 

什么把这个结果转换使用TouchJSON库一个NSArray的最佳方式?

Error Domain=kJSONScannerErrorDomain Code=-101 "Could not scan dictionary. Dictionary that does not start with '{' character." 

回答

2

你为什么不只是使用-deserialize:的方法,然后找出你有什么样的对象其完成后?

或回答您的具体问题,使用-deserializeAsArray:

+0

-deserializeAsArray:函数已被弃用我猜是因为它在TouchJSON代码中不再可用。但正如JeremyP已经说过的,只是使用-deserialize:函数,它会起作用。 – Leon 2013-02-13 08:53:44

1

我想大多数解析器与阵列数据皱眉。您将不得不返回一个哈希值:

{'result': [Your array data]}