//
网络请求
NSURLSession * mySession = [ NSURLSession sharedSession ];
NSURL * fullURL = [ NSURL URLWithString :[ NSString stringWithFormat : @"%@/%@" , host , shoplisturl ]];
NSMutableURLRequest * request = [ NSMutableURLRequest requestWithURL :fullURL cachePolicy : NSURLRequestUseProtocolCachePolicy timeoutInterval : 7.0 ];
request. HTTPMethod = @"POST" ;
[request addValue : @"application/x-www-form-urlencoded" forHTTPHeaderField : @"Content-Type" ];
NSString * paramStr = [ NSString stringWithFormat : @"cate_id=%@&business=%@&p=%@&sort=%@&num=%@&recommend=%@&keyword=%@&lng_lat=%@&uid=%@&token=%@" ,cateID,businessID,page,sort,num,recommend,keyword,lng_lat,userID,token];
request. HTTPBody = [paramStr dataUsingEncoding : NSUTF8StringEncoding ];
NSURLSessionDataTask * task = [mySession dataTaskWithRequest :request completionHandler :^( NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
// 判断接口是否成功返回
if (error) {
// 接口访问失败
NSLog ( @"error:%@" ,error. localizedDescription );
NSLog ( @"%s" ,__func__);
NSInteger status = 0 ;
if (callback) {
callback(status, @" 网络不给力 " );
}
} else
{
// 接口访问成功
//JSON 解析
NSError * parseError1 = nil ;
NSDictionary * dic = [ NSJSONSerialization JSONObjectWithData :data options : NSJSONReadingMutableContainers error :&parseError1];
if (parseError1) {
NSLog ( @"JSON 解析错误 " );
return ;
}
NSLog ( @"data:%@" , dic);
NSArray *dataArray = [dic objectForKey : @"info" ];
NSInteger status = [[dic objectForKey : @"status" ] integerValue ];
if (status == 1 ) {
if (callback) {
dispatch_async ( dispatch_get_main_queue (), ^{
callback(status,dataArray);
});
}
} else {
// [self showHUDInWindowJustWithText:[dic objectForKey:@"info"] disMissAfterDelay:1.0];
if (callback) {
dispatch_async ( dispatch_get_main_queue (), ^{
callback(status, nil );
});
}
}
}
}];
NSURLSession * mySession = [ NSURLSession sharedSession ];
NSURL * fullURL = [ NSURL URLWithString :[ NSString stringWithFormat : @"%@/%@" , host , shoplisturl ]];
NSMutableURLRequest * request = [ NSMutableURLRequest requestWithURL :fullURL cachePolicy : NSURLRequestUseProtocolCachePolicy timeoutInterval : 7.0 ];
request. HTTPMethod = @"POST" ;
[request addValue : @"application/x-www-form-urlencoded" forHTTPHeaderField : @"Content-Type" ];
NSString * paramStr = [ NSString stringWithFormat : @"cate_id=%@&business=%@&p=%@&sort=%@&num=%@&recommend=%@&keyword=%@&lng_lat=%@&uid=%@&token=%@" ,cateID,businessID,page,sort,num,recommend,keyword,lng_lat,userID,token];
request. HTTPBody = [paramStr dataUsingEncoding : NSUTF8StringEncoding ];
NSURLSessionDataTask * task = [mySession dataTaskWithRequest :request completionHandler :^( NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
// 判断接口是否成功返回
if (error) {
// 接口访问失败
NSLog ( @"error:%@" ,error. localizedDescription );
NSLog ( @"%s" ,__func__);
NSInteger status = 0 ;
if (callback) {
callback(status, @" 网络不给力 " );
}
} else
{
// 接口访问成功
//JSON 解析
NSError * parseError1 = nil ;
NSDictionary * dic = [ NSJSONSerialization JSONObjectWithData :data options : NSJSONReadingMutableContainers error :&parseError1];
if (parseError1) {
NSLog ( @"JSON 解析错误 " );
return ;
}
NSLog ( @"data:%@" , dic);
NSArray *dataArray = [dic objectForKey : @"info" ];
NSInteger status = [[dic objectForKey : @"status" ] integerValue ];
if (status == 1 ) {
if (callback) {
dispatch_async ( dispatch_get_main_queue (), ^{
callback(status,dataArray);
});
}
} else {
// [self showHUDInWindowJustWithText:[dic objectForKey:@"info"] disMissAfterDelay:1.0];
if (callback) {
dispatch_async ( dispatch_get_main_queue (), ^{
callback(status, nil );
});
}
}
}
}];
[task
resume
];