ios 网络请求 笔记

来源:互联网 发布:三国志9pk优化补丁版 编辑:程序博客网 时间:2024/06/10 15:57

同步post请求

NSUserDefaults *userDefaults=[NSUserDefaults standardUserDefaults];    //读取本地缓存的已配置的分类    self.app1category=[userDefaults arrayForKey:@"User1Category"];    self.app2category=[userDefaults arrayForKey:@"User2Category"];    //将推送ID缓存在本地    NSString *registerId=[userDefaults stringForKey:@"registrationIDs"];    if(registerId==nil||registerId.length==0){        NSLog(@"开始获取jpushid");        registerId=[APService registrationID];        [userDefaults setObject:registerId forKey:@"registrationIDs"];         NSLog(@"完成获取jpushid==%@",registerId);        [userDefaults synchronize];    }    //获取缓存中的分类设置    NSMutableArray *classids=[NSMutableArray arrayWithCapacity:10];;    for (int i=0; i<self.app1category.count; i++) {        [classids addObject:[NSString stringWithFormat:@"%@",[self.app1category[i] classId]]];    }    for (int i=0; i<self.app2category.count; i++) {        [classids addObject:[NSString stringWithFormat:@"%@",[self.app2category[i] classId]]];    }        NSString *stringurl = [NSString stringWithFormat:@urlxxx", BaseURLString];    NSURL *url = [NSURL URLWithString:stringurl];    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];    [request setHTTPMethod:@"POST"];    NSString *post = [NSString stringWithFormat:@"canshumingcheng",[userDefaults stringForKey:@"userImei"],registerId,[classids componentsJoinedByString:@","]];//设置参数    NSData *param=[post dataUsingEncoding:NSUTF8StringEncoding];    [request setHTTPBody:param];    NSError *error;    NSHTTPURLResponse *response=nil;    [request setTimeoutInterval:5];    NSData *data=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];    if (error) {    }else{        NSDictionary *dict=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];        NSDictionary *info=[dict infoOne];        //app1分类        NSDictionary *app1=[info app1];        NSMutableArray *new1Category=[app1 newCatagory];        NSMutableArray *all1Category=[app1 allCatagory];        NSMutableArray *selected1Category=[app1 selectedCatagory];        if(self.app1category==nil||new1Category.count>0){            self.app1category=selected1Category;            [userDefaults setObject:self.app1category forKey:@"User1Category"];        }        [userDefaults setObject:all1Category forKey:@"All1Category"];                //app2分类        NSDictionary *app2=[info app2];        NSMutableArray *new2Category=[app2 newCatagory];        NSMutableArray *all2Category=[app2 allCatagory];        NSMutableArray *selected2Category=[app2 selectedCatagory];        if(self.app2category==nil||new2Category.count>0){            self.app2category=selected2Category;            [userDefaults setObject:self.app2category forKey:@"User2Category"];        }        [userDefaults setObject:all2Category forKey:@"All2Category"];    }        //app1和app2选中的所有分类合集    self.category =[NSMutableArray arrayWithCapacity:10];    [self.category addObjectsFromArray:self.app1category ];    [self.category addObjectsFromArray:self.app2category];    [userDefaults setObject:self.category forKey:@"UserCategory"];    [userDefaults synchronize];    return self.category;

异步get请求

-(void)setData:(NSString *) begin_id setFlag:(NSInteger) classIds{    NSString *string= [NSString stringWithFormat:@"urlxxx", BaseURLString,(long)classIds,begin_id];    NSURL *url = [NSURL URLWithString:string];    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];    [request setTimeoutInterval:5];    AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];    operation.responseSerializer = [AFJSONResponseSerializer serializer];    [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {        self.docs=(NSMutableDictionary *)responseObject;        if([[self.docs info] count]==0){            [CommenData showLisetMesg:self.navigationController.view];        }        NSMutableArray *doclist=[[NSMutableArray alloc]initWithCapacity:10];        [doclist addObjectsFromArray:self.infos];        [doclist addObjectsFromArray:[self.docs info]];        self.infos=doclist;        [self.tableView reloadData];        // (最好在刷新表格后调用)调用endRefreshing可以结束刷新状态        [self.tableView footerEndRefreshing];    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {       [CommenData showNetError:self.navigationController.view];        // (最好在刷新表格后调用)调用endRefreshing可以结束刷新状态        [self.tableView footerEndRefreshing];    }];    [operation start];    }


0 0