| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257 |
- //
- // YBNetworking.m
- // YBVideo
- //
- // Created by YunBao on 2018/6/6.
- // Copyright © 2018年 cat. All rights reserved.
- //
- #import "YBNetworking.h"
- #import "iOSNetworking.h"
- @interface YBNetworking()
- @end
- static AFHTTPSessionManager *_netManager = nil;
- @implementation YBNetworking
- +(AFHTTPSessionManager *)ybnetManager{
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^{
- _netManager = [AFHTTPSessionManager manager];
-
- });
- return _netManager;
- }
- //+(void)getQCloudWithUrl:(NSString *)url Suc:(PullSuccessBlock)sucBack Fail:(PullFailBlock)failBack {
- // AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
- // [session GET:url parameters:nil progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
- // NSString *code = [NSString stringWithFormat:@"%@",[responseObject objectForKey:@"code"]];
- // NSDictionary *data = [responseObject valueForKey:@"data"];
- // NSString *msg = [NSString stringWithFormat:@"%@-%@",[responseObject objectForKey:@"message"],[responseObject objectForKey:@"codeDesc"]];
- // //回调
- // sucBack(data,code,msg);
- //
- // }failure:^(NSURLSessionDataTask *task, NSError *error) {
- // [MBProgressHUD showPop:@"网络错误"];
- // //必须判断failback是否存在
- // if (failBack) {
- // failBack(error);
- // }
- // }];
- //}
- +(void)getQCloudWithUrl:(NSString *)url Suc:(PullSuccessBlock)sucBack Fail:(PullFailBlock)failBack {
- //AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
- [[YBNetworking ybnetManager] GET:url parameters:nil headers:nil progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
- int code = [[NSString stringWithFormat:@"%@",[responseObject objectForKey:@"code"]] intValue];
- NSDictionary *data = [responseObject valueForKey:@"data"];
- NSString *msg = [NSString stringWithFormat:@"%@-%@",[responseObject objectForKey:@"message"],[responseObject objectForKey:@"codeDesc"]];
- //回调
- sucBack(code,data,msg);
-
- }failure:^(NSURLSessionDataTask *task, NSError *error) {
- [MBProgressHUD showPop:YZMsg(@"网络错误")];
- //必须判断failback是否存在
- if (failBack) {
- failBack(error);
- }
- }];
- }
- //+(void)postWithUrl:(NSString *)url Dic:(NSDictionary *)dic Suc:(PullSuccessBlock)sucBack Fail:(PullFailBlock)failBack {
- // AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
- // //NSString *pullUrl = [purl stringByAppendingFormat:@"?service=%@",url];//index.php
- // [session POST:url parameters:dic progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
- // NSNumber *number = [responseObject valueForKey:@"ret"] ;
- // if([number isEqualToNumber:[NSNumber numberWithInt:200]]) {
- // NSDictionary *data = [responseObject valueForKey:@"data"];
- // NSString *code = [NSString stringWithFormat:@"%@",[data valueForKey:@"code"]];
- // NSString *msg = [NSString stringWithFormat:@"%@",[data valueForKey:@"msg"]];
- // //回调
- // sucBack(data,code,msg);
- // }else{
- // NSString *erro_fun = [self getFunName:url];
- // sucBack(@{},@"9999",[NSString stringWithFormat:@"接口错误:%@-%@\n%@",number,erro_fun,[responseObject valueForKey:@"msg"]]);
- // }
- // }failure:^(NSURLSessionDataTask *task, NSError *error) {
- // [MBProgressHUD showPop:@"网络错误"];
- // //必须判断failback是否存在
- // if (failBack) {
- // failBack(error);
- // }
- // }];
- //}
- #pragma mark - AF
- //+(void)postWithUrl:(NSString *)url Dic:(NSDictionary *)dic Suc:(PullSuccessBlock)sucBack Fail:(PullFailBlock)failBack {
- //
- // NSString *pullUrl = [purl stringByAppendingFormat:@"?service=%@",url];//index.php
- // pullUrl = [pullUrl stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
- //
- // NSMutableDictionary *pullDic = [[NSMutableDictionary alloc]initWithDictionary:dic];
- // if (![PublicObj checkNull:[Config getOwnID]]) {
- // [pullDic addEntriesFromDictionary:@{@"uid":[Config getOwnID],@"token":[Config getOwnToken]}];
- // }
- // [pullDic addEntriesFromDictionary:@{@"version_ios":[PublicObj getAppBuild],@"mobileid":[PublicObj getDeviceUUID],@"device":[PublicObj iphoneType]}];
- // //NSLog(@"请求参数(%@):%@\n\nfullUrl:\n%@%@\n",pullUrl,pullDic,pullUrl,[self getStrWithDic:pullDic]);
- // NSLog(@"\nfullUrl:\n%@%@\n",pullUrl,[self getStrWithDic:pullDic]);
- // [[YBNetworking ybnetManager] POST:pullUrl parameters:pullDic headers:nil progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
- // NSNumber *number = [responseObject valueForKey:@"ret"] ;
- // if([number isEqualToNumber:[NSNumber numberWithInt:200]]) {
- // //NSLog(@"获取参数(%@):%@",pullUrl,responseObject);
- // NSDictionary *data = [responseObject valueForKey:@"data"];
- // id info = [data valueForKey:@"info"];
- // int code = [minstr([data valueForKey:@"code"]) intValue];
- // NSString *msg = [NSString stringWithFormat:@"%@",[data valueForKey:@"msg"]];
- // //回调
- // sucBack(code,info,msg);
- // if (code == 700) {
- // dispatch_async(dispatch_get_main_queue(), ^{
- // [MBProgressHUD hideHUD];
- // [PublicObj tokenExpired:msg];
- // });
- // NSLog(@"====%@",pullUrl);
- // }
- // }else{
- // //NSString *erro_fun = [self getFunName:pullUrl];
- // sucBack(999,@[],[NSString stringWithFormat:@"%@:%@-%@\n%@",YZMsg(@"接口错误"),number,url,[responseObject valueForKey:@"msg"]]);
- // }
- // }failure:^(NSURLSessionDataTask *task, NSError *error) {
- // //必须判断failback是否存在
- // if (failBack) {
- // failBack(error);
- // }
- // [MBProgressHUD showPop:YZMsg(@"网络错误")];
- // /*
- // NSString *msg = [NSString stringWithFormat:@"%@-\n%@",error,pullDic];
- // UIAlertController *alertC = [UIAlertController alertControllerWithTitle:@"error" message:msg preferredStyle:UIAlertControllerStyleAlert];
- // UIAlertAction *cancelA = [UIAlertAction actionWithTitle:@"复制" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
- // UIPasteboard *paste = [UIPasteboard generalPasteboard];
- // paste.string = msg;
- // }];
- // UIViewController *currentVC = [UIApplication sharedApplication].delegate.window.rootViewController;
- // [alertC addAction:cancelA];
- // dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
- // [currentVC presentViewController:alertC animated:YES completion:nil];
- // });
- // */
- //
- // }];
- //}
- #pragma mark -
- +(void)postWithUrl:(NSString *)url Dic:(NSDictionary *)dic Suc:(PullSuccessBlock)sucBack Fail:(PullFailBlock)failBack {
- [iOSNetworking postWithURL:url params:dic success:^(NSURLResponse *response, id responseObject) {
- dispatch_async(dispatch_get_main_queue(), ^{
- NSNumber *number = [responseObject valueForKey:@"ret"] ;
- if([number isEqualToNumber:[NSNumber numberWithInt:200]]) {
-
- NSDictionary *data = [responseObject valueForKey:@"data"];
- id info = [data valueForKey:@"info"];
- int code = [minstr([data valueForKey:@"code"]) intValue];
- NSString *msg = [NSString stringWithFormat:@"%@",[data valueForKey:@"msg"]];
- //回调
- if (sucBack) {
- sucBack(code,info,msg);
- }
- if (code == 700) {
- [MBProgressHUD hideHUD];
- [PublicObj tokenExpired:msg];
- NSLog(@"====%@",url);
- }
- }else{
- if (sucBack) {
- NSString *resDes = [PublicObj checkNull:minstr([responseObject valueForKey:@"msg"])]?@"":minstr([responseObject valueForKey:@"msg"]);
- NSString *failDesStr = [NSString stringWithFormat:@"%@:%@\n%@-%@",YZMsg(@"接口错误"),minstr([responseObject valueForKey:@"ret"]),url,resDes];
- NSHTTPURLResponse *httpRes = (NSHTTPURLResponse*)response;
- if (httpRes.statusCode != 200) {
- failDesStr = [NSString stringWithFormat:@"%@:%ld\n%@-%@",YZMsg(@"接口错误"),(long)httpRes.statusCode,url,resDes];
- }
- sucBack(999,@[],failDesStr);
- }
- }
- });
- } failure:^(NSString *error) {
- dispatch_async(dispatch_get_main_queue(), ^{
- if (failBack) {
- failBack(error);
- }
- [MBProgressHUD showError:YZMsg(@"信息错误")];
- });
- }];
- }
- +(NSString *)getStrWithDic:(NSDictionary*)dic {
- if ([dic allKeys].count<=0) {
- return @"";
- }
- NSString *urlStr = @"";
- for (NSString *key in [dic allKeys]) {
- NSString *value = minstr([dic valueForKey:key]);
- value = [value stringByReplacingOccurrencesOfString:@" " withString:@""];
- urlStr = [urlStr stringByAppendingFormat:@"&%@=%@",key,value];
- }
- return urlStr;
- }
- /**
- * 获得接口名称
- * @param url 全地址(eg:xxx/api/public/?service=Video.getRecommendVideos&uid=12470&type=0&p=1)
- * @return 返回的接口名(eg:Video.getRecommendVideos)
- */
- +(NSString *)getFunName:(NSString *)url{
- if (![url containsString:@"&"]) {
- url = [url stringByAppendingFormat:@"&"];
- }
- NSRange startRange = [url rangeOfString:@"="];
- NSRange endRange = [url rangeOfString:@"&"];
- NSRange range = NSMakeRange(startRange.location + startRange.length, endRange.location - startRange.location - startRange.length);
- NSString *result = [url substringWithRange:range];
- return result;
- }
- #pragma mark - 获取视频分类
- +(void)getVideoClass:(BOOL)postNot {
-
- [self postWithUrl:@"Video.getClassLists" Dic:@{} Suc:^(int code, id info, NSString *msg) {
- if (code == 0) {
- if ([info isKindOfClass:[NSArray class]]) {
- [common saveVideoClass:info];
- //rk_net
- if (postNot) {
- [[NSNotificationCenter defaultCenter] postNotificationName:@"FirstGetVideoClass" object:nil];
- }
- }
- }
- } Fail:^(id fail) {
-
- }];
-
-
- }
- /// 获取用户关系
- +(void)getRelationWithTouid:(NSString *)touid finish:(PullFinishiBlock)finish {
- [YBNetworking postWithUrl:@"User.getUserHome" Dic:@{@"touid":touid} Suc:^(int code, id info, NSString *msg) {
- if (code == 0) {
- NSDictionary *infoDic = [info firstObject];
- if (finish) {
- finish(0,infoDic);
- }
- }else{
- if (finish) {
- finish(code,@{});
- }
- }
- } Fail:^(id fail) {
- if (finish) {
- finish(-1,@{});
- }
- }];
- }
- @end
|