2013-06-19 97 views
1

有很多關於如何將RestKit與集成網絡堆棧一起使用的示例,但是,我只想採用JSON字符串並將其映射到對象。RestKit:如何映射任意字符串

如何使用RestKit,當前版本(0.20.x)執行此操作?

+0

看到這個問題[http://stackoverflow.com/questions/13342253/is-there-a-way-we-can-give-dummy -input-to-restkit]和這個答案[http://stackoverflow.com/questions/8788904/what-is-an-easy-way-to-stub-dummy-a-restful-web-service] –

+0

@LithuT .V我不是在談論良好的REST開發實踐。我正在談論一個可以做對象映射,網絡和持久性的iOS和OSX庫。 。 。這些功能似乎緊密集成,我想單獨使用對象映射部分。 –

+0

我沒有說任何關於「良好的REST開發」的東西。這是一個解決方法。我知道什麼是restkit是 –

回答

1

我沒有找到文檔中的答案:

NSString* JSONString = @"{ \"name\": \"The name\", \"number\": 12345}"; 
NSString* MIMEType = @"application/json"; 
NSError* error; 
NSData *data = [JSONString dataUsingEncoding:NSUTF8StringEncoding]; 
id parsedData = [RKMIMETypeSerialization objectFromData:data MIMEType:MIMEType error:&error]; 
if (parsedData == nil && error) { 
    // Parser error... 
} 

NSDictionary *mappingsDictionary = @{ @"someKeyPath": someMapping }; 
RKMapperOperation *mapper = [[RKMapperOperation alloc] initWithRepresentation:parsedData mappingsDictionary:mappingsDictionary]; 
NSError *mappingError = nil; 
BOOL isMapped = [mapper execute:&mappingError]; 
if (isMapped && !mappingError) { 
    // Yay! Mapping finished successfully 
}