美文网首页很常
iOS 网络请求接口需把数组作为参数

iOS 网络请求接口需把数组作为参数

作者: xu1Peng | 来源:发表于2021-04-28 11:20 被阅读0次
    
     // 等待UI
    
        [LZBLoadingView showAndroidLoadingView:nil];
    
        NSMutableArray *array = [NSMutableArray array];
    
        for(inti =0; i < models.count; i++) {
    
            MarketModel*model = models[i];
    
            NSLog(@"===%@===",model.Id);
    
            NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    
            [dictsetValue:model.IdforKey:@"id"];
    
            [dictsetValue:[NSString stringWithFormat:@"%d",i] forKey:@"sort"];
    
            [arrayaddObject:dict];
    
        }
    
        NSString *jsonDic = [self gs_jsonStringCompactFormatForNSArray:array];
    
        NSLog(@"===%@===",jsonDic);
    
        //1. 创建一个网络请求
    
        NSURL *url = [NSURL URLWithString:GetMarketOptionalListlistUpdateAPI];
    
        //2.创建请求对象
    
        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
    
        // 设置请求超时
    
       [requestsetTimeoutInterval:10.0];
    
       // 设置请求方法
    
       [requestsetHTTPMethod:@"POST"];
    
        NSString  *tokenstr = [MyToolsinputToken];
    
        NSMutableString *uuid = [[APPIdentificationManage sharedManager] readUDID];
    
        NSString*uuidStr =  [uuidstringByReplacingOccurrencesOfString:@"-" withString:@""];
    
        NSString*uuidStrs = [uuidStrsubstringToIndex:13];
    
        [requestaddValue:tokenstrforHTTPHeaderField:@"Authorization"];
    
        [requestaddValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    
        [requestaddValue:@"equipment" forHTTPHeaderField:@"ios"];
    
        [requestaddValue:uuidStrsforHTTPHeaderField:@"ime"];
    
    
    
        NSData*parametersData = [jsonDicdataUsingEncoding:NSUTF8StringEncoding];
    
        // 5、设置请求报文
    
        [requestsetHTTPBody:parametersData];
    
        //3.获得会话对象
    
        NSURLSession *session=[NSURLSession sharedSession];
    
        NSURLSessionDataTask*dataTask=[sessiondataTaskWithRequest:requestcompletionHandler:^(NSData*_Nullabledata,NSURLResponse*_Nullableresponse,NSError*_Nullableerror) {
    
                NSLog(@"网络响应:response:%@",response);
    
                [[NSOperationQueue mainQueue] addOperationWithBlock:^{
    
                    //需要在主线程执行的代码
    
                    [LZBLoadingViewdismissLoadingView];
    
                    // 返回前一页
    
                    [self.navigationController popViewControllerAnimated:YES];
    
                    // 重新加载数据
    
                    if(self.delegate&& [self.delegaterespondsToSelector:@selector(updateVC)]) {
    
                        [self.delegateupdateVC];
    
                        }
    
                }];
    
            }
    
        ];
    
        //5.执行任务
    
        [dataTaskresume];
    
    

    相关文章

      网友评论

        本文标题:iOS 网络请求接口需把数组作为参数

        本文链接:https://www.haomeiwen.com/subject/awcvrltx.html