рд╣рд╛рдп рд╣рдорд░!
рдкреНрд░рд╛рдЧрд┐рддрд┐рд╣рд╛рд╕
рдореИрдВрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджреЗрдЦрд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрджреНрднреБрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд╣рдм рдкрд░ рдПрдХ рднреА рд▓реЗрдЦ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐
рд░реЗрд╕реНрдЯрдХрд┐рдЯ , рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░
рд░реЗрд╕реНрдЯрдлреБрд▓ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрдХреГрд╖реНрдЯ рдЕрд╡рд╕рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░ рдЖрдпрд╛, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдЗрд╕рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╣реА рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ,
рдПрдПрдлрдПрди рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ HTTP рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВред рд▓реЗрдЦ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпрд╛рддреНрдордХрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ - рд╡рд╕реНрддреБрдУрдВ рдХреА рдореИрдкрд┐рдВрдЧред
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ GitHub рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ
рдкреЗрдЬ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкреЙрдбреНрд╕ рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рднреА рдПрдХреНрд╕реЗрд╕ рдХрд░реЗрдВ:
$ cat Podfile platform :ios, '5.0' pod 'RestKit', '~> 0.20.0pre'
рдЪрд▓реЛ рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЙрддрд░реЛ
рд╣рдо рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд▓реЗрдЦ рдЕрднреА рднреА рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ рд╕рдордЭрддреЗ рд╣реИрдВ, рдХрдо рд╕реЗ рдХрдо, рдЖрд░рдИрдПрд╕рдЯреА рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред
рдкреНрд░рд╛рд░рдВрдн
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп, HTTP рдФрд░ рдореИрдкрд┐рдВрдЧ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рд┐рдВрдЧрд▓рдЯрд╛рдЙрди рдХреЗ рд▓рд┐рдП рд╢реБрд░реБрдЖрддреА рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:
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:@{
RKResponseDescriptor рд╡рд░реНрдЧ рдХрд╛ pathPattern рдкреИрд░рд╛рдореАрдЯрд░ рдЙрд╕ рдкрде рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдХрдХреНрд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд╕реНрд╡рдпрдВ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
RKObjectManager *objectManager = [RKObjectManager sharedManager]; [objectManager getObject:nil path:@"tasks" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЕрдиреБрд░реЛрдз рд╣реИ, рдХрднреА-рдХрднреА рд╣рдореЗрдВ рдЕрдиреБрд░реЛрдз рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗрдкрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
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) {
RKObjectRequestOperation рд╡рд░реНрдЧ рдХреА рдПрдХ рд╡рд╕реНрддреБ рдореЗрдВ рд╡реЗ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдкреИрд░рд╛рдореАрдЯрд░ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдХрд┐рдпрд╛
рд▓реЗрдЦ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЖрдЧреЗ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрджрд┐ рдпрд╣ рд╡рд┐рд╖рдп рд░реБрдЪрд┐ рдХрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЕрдиреНрдп рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рд╕рд╛рде рд╣реА рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рджреМрд░рд╛рди рднрд░реЗ рдЧрдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рдзрдХреНрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред
рдХреНрдпрд╛ рдореБрдЭреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдФрд░ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?
рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:
- CoreData рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ
- рдмрд╣реБ-рдкреГрд╖реНрда рдЕрдиреБрд░реЛрдзреЛрдВ (рдкреГрд╖реНрдард╛рдВрдХрди) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ
- рдПрдХ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХрдИ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдорд╛рдирдЪрд┐рддреНрд░рдг рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ
- рдФрд░ рдЕрдиреНрдп
рдСрд▓ рдж рдмреЗрд╕реНрдЯ! рджреБрдирд┐рдпрд╛!