jsonMode总结
来源:互联网 发布:淘宝客都在哪里推广 编辑:程序博客网 时间:2024/05/17 18:49
jsonMode 的使用 《总体感觉就是看的再多都不如敲一遍收获大》
首先用cocoaPods 导入JSONModel,AFNetworking
请求下来的数据是html格式的
1、首先新建一个MODE,继承自JsonMode
2、根据网络请求的数据,建立模型
{ "status": 200, "info": "请求成功", "data": [ {}, {} ], "banner": [ {}, {} ], "statistics": { "turnover": "17,454.83", "profit": "100.21" }, "server_phone": "400-1234-123"}
Mode里的模型 .h文件
@interface DataMode : JSONModel
@property (nonatomic ,strong) NSString * loanId;
@property (nonatomic ,strong) NSString * loanCategory;
@property (nonatomic ,strong) NSString * status;
@property (nonatomic ,strong) NSString * loanTitle;
@property (nonatomic ,strong) NSString * loanInterestRate;
@property (nonatomic ,strong) NSString * loanDuration;
@property (nonatomic ,strong) NSString * investorCount;
@property (nonatomic ,strong) NSString * biddingProgress;
@end
@interface BannerMode : JSONModel
@property (nonatomic ,strong) NSString * url;
@property (nonatomic ,strong) NSString * htmlUrl;
@property (nonatomic ,strong) NSString * htmlTitle;
@end
@interface statisticsMode :JSONModel
@property (nonatomic ,strong) NSString * turnover;
@property (nonatomic ,strong) NSString * profit;
@end
@interface HomeMode : JSONModel
@property (nonatomic ,assign) int status;
@property (nonatomic ,strong) NSString * info;
@property (nonatomic ,strong) NSArray <DataMode *> * data;//要和json里的kye值对应
@property (nonatomic ,strong) NSArray <BannerMode*> * banner;//要和json里的kye值对应
@property (nonatomic ,strong) statisticsMode * statistics;//要和json里的kye值对应
@property (nonatomic ,strong) NSString * server_phone;
@end
Mode .m文件
@implementation HomeMode
+ (BOOL)propertyIsOptional:(NSString *)propertyName
{
returnYES;
}
@end
@implementation DataMode
+ (BOOL)propertyIsOptional:(NSString *)propertyName
{
returnYES;
}
@end
@implementation BannerMode
+ (BOOL)propertyIsOptional:(NSString *)propertyName
{
returnYES;
}
@end
@implementation statisticsMode
+ (BOOL)propertyIsOptional:(NSString *)propertyName
{
returnYES;
}
@end
这个方法的作用 请求的数据mode里没有该对象,不会报错具体使用
[manager GET:strparameters:nilprogress:nilsuccess:^(NSURLSessionDataTask *_Nonnull task, id _Nullable responseObject) {
HomeMode * homeData = [[HomeModealloc]initWithData:responseObjecterror:nil];
BannerMode * banner = homeData.banner[0];
NSLog(@"%@",((NSDictionary * )banner)[@"url"]);
} failure:^(NSURLSessionDataTask *_Nullable task, NSError *_Nonnull error) {
NSLog(@"%@",error);
}];
学习中遇到的问题:
1、jsonMode里的嵌套模型 ,
@interface HomeMode : JSONModel
@property (nonatomic ,assign) int status;
@property (nonatomic ,strong) NSString * info;
@property (nonatomic ,strong) NSArray <DataMode *> * data;//要和json里的key值对应
@property (nonatomic ,strong) NSArray <BannerMode*> * banner;//要和json里的key值对应
@property (nonatomic ,strong) statisticsMode * statistics;//要和json里的key值对应
@property (nonatomic ,strong) NSString * server_phone;
@end
要和 json里的key对应。
- jsonMode总结
- JsonMode json嵌套解析
- 总结
- 总结
- 总结
- 总结
- 总结!
- 总结
- 总结.
- 总结。
- 总结
- 总结
- 总结
- 总结
- 总结
- 总结
- 总结
- 总结
- UE4无尽跑酷游戏制作杂记之一
- SpringMVC和Spring集成
- HTTP协议状态码详解(HTTP Status Code)
- ARP表是在交换机上还是在路由器上?
- 详解结构体、类等内存字节对齐
- jsonMode总结
- 对我有帮助的博客
- 用Qt获取本机IP
- 5个常见的运行时异常
- [leetcode] 279. Perfect Squares 解题报告
- 学习乐器的好处(1)
- 数据模型的创建及设置值MoudeType
- Linux数据流重定向
- SSH集成相关配置