$ cat Podfile platform :ios, '5.0' pod 'RestKit', '~> 0.20.0pre'
NSURL *baseURL = [NSURL URLWithString:kServerHost]; AFHTTPClient* client = [[AFHTTPClient alloc] initWithBaseURL:baseURL]; RKObjectManager *objectManager = [[RKObjectManager alloc] initWithHTTPClient:client]; [RKObjectManager setSharedManager:objectManager];
@interface TaskListSuccess : NSObject @property(nonatomic, copy) NSString *created_at; @property(nonatomic, copy) NSString *updated_at; @property(nonatomic, copy) NSString *user_id; @property(nonatomic, copy) NSString *ID; @property(nonatomic, copy) NSString *title; @property(nonatomic, copy) NSString *time; @end
RKObjectMapping* successAuthResult = [RKObjectMapping mappingForClass:[TaskListSuccess class]]; [successAuthResult addAttributeMappingsFromDictionary:@{ // JSON(XML) @"created_at": @"created_at", @"updated_at": @"updated_at", @"user_id": @"user_id", @"id": @"ID", @"title": @"title", @"time": @"time", }]; // -, . NSIndexSet *successStatusCodes = RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful); RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:successAuthResult pathPattern:@"tasks" keyPath:nil statusCodes:successStatusCodes]; [[RKObjectManager sharedManager] addResponseDescriptor:responseDescriptor];
RKObjectManager *objectManager = [RKObjectManager sharedManager]; [objectManager getObject:nil path:@"tasks" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) { // ... } failure:^(RKObjectRequestOperation *operation, NSError *error) { // ... }];
RKObjectManager *objectManager = [RKObjectManager sharedManager]; NSMutableURLRequest *urlRequest = [objectManager requestWithObject:nil method:RKRequestMethodPOST path:@"tasks" parameters:nil]; [urlRequest setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; RKObjectRequestOperation *operation = [objectManager objectRequestOperationWithRequest:urlRequest success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) { // ... } failure:^(RKObjectRequestOperation *operation, NSError *error) { // ... }]; [objectManager enqueueObjectRequestOperation:operation];
Source: https://habr.com/ru/post/172233/