大佬教程收集整理的这篇文章主要介绍了ios – 成功查看RestKit后获取Null值,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的问题
在发布请求映射后如何保存值?如果有人可以提供一个如何使用response.body值的示例,那将非常有用.谢谢.
我的课程
#import <Foundation/Foundation.h> @interface AccountsClass : NSObject @property (nonatomic,strong) NSString *DeviCEType; @property (nonatomic,strong) NSString *HardwarEID; @property (nonatomic,strong) NSString *NickName; @property (nonatomic,strong) NSnumber *HelpCreditsBalance; @property (nonatomic,assign) BOOL GotratingCreditBonus; @property (nonatomic,strong) NSnumber *AccountId; @end
这是我用于POST请求的方法
-(void)loadPostrequest { _StorEIDentifierForVendor = [[[UIDevice currentDevice]identifierForVendor]UUIDString]; _StoreTheModel = [UIDevice currentDevice].model; _nickname = usernameTextField.text; AccountsClass *AccounTinfo = [[AccountsClass alloc] init]; AccounTinfo.NickName = _nickname; AccounTinfo.HardwarEID =_StorEIDentifierForVendor; AccounTinfo.DeviCEType =_StoreTheModel; AccounTinfo.AccountId =nil; AccounTinfo.GotratingCreditBonus = falSE; AccounTinfo.HelpCreditsBalance = nil; //this is where the POST request begins RKObjectMapping *responseMapping = [RKObjectMapping mappingForClass:[AccountsClass class]]; [responseMapping addAttributeMappingsFromArray:@[@"NickName",@"HardwarEID",@"DeviCEType",@"AccountId"]]; NSIndexSet *statusCodes = RKStatusCodeIndexSetForClass(RKStatusCodeClasssuccessful); // Anything in 2xx RKResponseDescriptor *AccountDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:responseMapping method:rKrequestMethodAny pathPattern:nil keyPath:nil statusCodes:statusCodes]; RKObjectMapping *requestMapping = [RKObjectMapping requestMapping]; // objectClass == NSMutableDictionary [requestMapping addAttributeMappingsFromArray:@[@"NickName",@"AccountId"]]; // For any object of class Article,serializE into an NSMutableDictionary using the given mapping and nest // under the 'article' key path RKrequestDescriptor *requestDescriptor = [RKrequestDescriptor requestDescriptorWithMapping:requestMapping objectClass:[AccounTinfo class] rootKeyPath:nil method:rKrequestMethodAny]; RKObjectManager *manager = [RKObjectManager managerWithBaseURL:[NSURL URLWithString:@"http://10.15.1.105:XXXX"]]; [manager addrequestDescriptor:requestDescriptor]; [manager addResponseDescriptor:AccountDescriptor]; [manager postObject:AccounTinfo path:@"/Accounts" parameters:nil success: ^(RKObjectrequestOperation *operation,RKMappingResult *mappingResult) { RKLogInfo(@"Load collection of Articles: %@",mappingResult.array); [self performSegueWithIdentifier:@"SegueFromLoginToWelcomeView" sender:self]; NSLog(@"the firs tobject %@",[mappingResult firstObject]); } failure:^(RKObjectrequestOperation *operation,NSError *error) { RKLogError(@"Operation Failed with error: %@",error); }]; RKLogConfigureByName("*",RKLogLevelTracE); // set all logs to trace,}
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. AccountsClass *PrintloginName = [[AccountsClass alloc]init]; welcomeLabel.text =[PrintloginName NickName]; NSLog(@"visibility test %@",welcomeLabel.text); }
控制台日志
2013-11-09 15:44:41.066 GuessTheImage[4913:70b] I restkit:rKLog.m:33 RestKit logging initialized... 2013-11-09 15:44:46.859 GuessTheImage[4913:70b] LoginViewController - Submit Action 2013-11-09 15:44:46.868 GuessTheImage[4913:70b] T restkit.network:rKObjectrequestOperation.m:148 POST 'http://10.15.1.105.XXXX/Accounts': request.headers={ Accept = "application/json"; "Accept-Language" = "en;q=1,fr;q=0.9,de;q=0.8,zh-Hans;q=0.7,zh-Hant;q=0.6,ja;q=0.5"; "Content-Type" = "application/x-www-form-urlencoded; charset=utf-8"; "User-Agent" = "GuessTheImage/1.0 (iPhone Simulator; iOS 7.0.3; Scale/2.00)"; } request.body=DeviCEType=iPhone%20Simulator&HardwarEID=0F9B444B-FA08-4422-B154-B8F6861D41FB&NickName=skrillex2 2013-11-09 15:44:47.410 GuessTheImage[4913:f03] D restkit.object_mapping:rKMapperOperation.m:378 ExecuTing mapping operation for representation: { AccountId = 1128; DeviCEType = "iPhone Simulator"; GotratingCreditBonus = 0; HardwarEID = "0F9B444B-FA08-4422-B154-B8F6861D41FB"; HelpCreditsBalance = 50; NickName = skrillex2; } and targetObject: <AccountsClass: 0x8b9aa00> 2013-11-09 15:44:47.412 GuessTheImage[4913:f03] T restkit.object_mapping:rKMapperOperation.m:321 Examining keyPath '<null>' for mappable content... 2013-11-09 15:44:47.413 GuessTheImage[4913:f03] D restkit.object_mapping:rKMapperOperation.m:301 Found mappable data at keyPath '<null>': { AccountId = 1128; DeviCEType = "iPhone Simulator"; GotratingCreditBonus = 0; HardwarEID = "0F9B444B-FA08-4422-B154-B8F6861D41FB"; HelpCreditsBalance = 50; NickName = skrillex2; } 2013-11-09 15:44:47.414 GuessTheImage[4913:f03] D restkit.object_mapping:rKMapperOperation.m:230 Asked to map source object { AccountId = 1128; DeviCEType = "iPhone Simulator"; GotratingCreditBonus = 0; HardwarEID = "0F9B444B-FA08-4422-B154-B8F6861D41FB"; HelpCreditsBalance = 50; NickName = skrillex2; } with mapping <RKObjectMapping:0x8b94680 objectClass=AccountsClass propertymappings=( "<RKAttributeMapping: 0x8b8b210 NickName => NickName>","<RKAttributeMapping: 0x8b8b230 HardwarEID => HardwarEID>","<RKAttributeMapping: 0x8b9cf20 DeviCEType => DeviCEType>","<RKAttributeMapping: 0x8b9cf40 AccountId => AccountId>" )> 2013-11-09 15:44:47.415 GuessTheImage[4913:f03] D restkit.object_mapping:rKMappingOperation.m:851 StarTing mapping operation... 2013-11-09 15:44:47.415 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:852 Performing mapping operation: <RKMappingOperation 0x8cad4c0> for 'AccountsClass' object. Mapping values from object { AccountId = 1128; DeviCEType = "iPhone Simulator"; GotratingCreditBonus = 0; HardwarEID = "0F9D844B-FA08-4422-B254-B8F6861F41FB"; HelpCreditsBalance = 50; NickName = skrillex2; } to object <AccountsClass: 0x8b9aa00> with object mapping (null) 2013-11-09 15:44:47.416 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:440 Mapping attribute value keyPath 'NickName' to 'NickName' 2013-11-09 15:44:47.416 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:429 Found transformable value at keyPath 'NickName'. Transforming from class '__NSCFString' to 'NSString' 2013-11-09 15:44:47.417 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:475 Skipped mapping of attribute value from keyPath 'NickName to keyPath 'NickName' -- value is unchanged (skrillex2) 2013-11-09 15:44:47.417 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:440 Mapping attribute value keyPath 'HardwarEID' to 'HardwarEID' 2013-11-09 15:44:47.417 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:429 Found transformable value at keyPath 'HardwarEID'. Transforming from class '__NSCFString' to 'NSString' 2013-11-09 15:44:47.418 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:475 Skipped mapping of attribute value from keyPath 'HardwarEID to keyPath 'HardwarEID' -- value is unchanged (0F9D844B-FA08-4422-B254-B8F6861F41FB) 2013-11-09 15:44:47.418 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:440 Mapping attribute value keyPath 'DeviCEType' to 'DeviCEType' 2013-11-09 15:44:47.420 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:429 Found transformable value at keyPath 'DeviCEType'. Transforming from class '__NSCFString' to 'NSString' 2013-11-09 15:44:47.420 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:475 Skipped mapping of attribute value from keyPath 'DeviCEType to keyPath 'DeviCEType' -- value is unchanged (iPhone Simulator) 2013-11-09 15:44:47.421 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:440 Mapping attribute value keyPath 'AccountId' to 'AccountId' 2013-11-09 15:44:47.421 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:429 Found transformable value at keyPath 'AccountId'. Transforming from class '__NSCFnumber' to 'NSnumber' 2013-11-09 15:44:47.421 GuessTheImage[4913:f03] T restkit.object_mapping:rKMappingOperation.m:460 Mapped attribute value from keyPath 'AccountId' to 'AccountId'. Value: 1128 2013-11-09 15:44:47.421 GuessTheImage[4913:f03] D restkit.object_mapping:rKMappingOperation.m:920 Finished mapping operation successfully... 2013-11-09 15:44:47.422 GuessTheImage[4913:f03] D restkit.object_mapping:rKMapperOperation.m:404 Finished performing object mapping. Results: { "<null>" = "<AccountsClass: 0x8b9aa00>"; } 2013-11-09 15:44:47.425 GuessTheImage[4913:4f0f] T restkit.network:rKObjectrequestOperation.m:218 POST 'http://10.15.1.105:XXXX/Accounts' (201 Created / 1 objects) [request=0.5414s mapping=0.0155s @R_720_10586@l=0.5654s]: response.headers={ "Cache-Control" = "no-cache"; "Content-Length" = 178; "Content-Type" = "application/json; charset=utf-8"; Date = "Sat,09 Nov 2013 23:44:41 GMT"; Expires = "-1"; Pragma = "no-cache"; Server = "Microsoft-IIS/8.0"; "Set-Cookie" = "ARRAffinity=c390b30098dd5ae543210f9431ef79195d0285397a590e0175ce17a5951ea041;Path=/;Domain=e.azurewebsites.net,WAWebSiteSID=af7b9190880945d5938dd9725eecb045; Path=/; httpOnly"; "X-AspNet-Version" = "4.0.30319"; "X-Powered-By" = "ASP.NET"; } response.body={"DeviCEType":"iPhone Simulator","HardwarEID":"0F9D844B-FA08-4422-B254-B8F6861F41FB","NickName":"skrillex2","HelpCreditsBalance":50,"GotratingCreditBonus":false,"AccountId":1128} 2013-11-09 15:44:47.425 GuessTheImage[4913:70b] I app:LoginViewController.m:107 Load collection of Articles: ( "<AccountsClass: 0x8b9aa00>" ) 2013-11-09 15:44:47.430 GuessTheImage[4913:70b] the firs tobject <AccountsClass: 0x8b9aa00> 2013-11-09 15:44:47.440 GuessTheImage[4913:70b] visibility test (null)
以上是大佬教程为你收集整理的ios – 成功查看RestKit后获取Null值全部内容,希望文章能够帮你解决ios – 成功查看RestKit后获取Null值所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。