ios第二种post请求


//请求部分


NSURL *url=[NSURL URLWithString:[portUrl stringByAppendingString:@"/gt/ajax-validate5"]];

        // 2.创建一个网络请求,分别设置请求方法、请求参数

        NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL:url];

        [request setTimeoutInterval:10.0f];//超过这个时间就算超时,请求失败

        NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init];

        

        [parameters setValue:_phoneTextField.text forKey:@"phone"];

        [parameters setValue:@"7" forKey:@"typeId"];

        [parameters setValue:idstring forKey:@"userId"];

        [parameters setValue:myUUIDStr forKey:@"uuid"];

        [parameters setValue:[result objectForKey:@"geetest_challenge"forKey:@"geetest_challenge"];

 

        [parameters setValue:[result objectForKey:@"geetest_validate"] forKey:@"geetest_validate"];

        [parameters setValue:[result objectForKey:@"geetest_seccode"] forKey:@"geetest_seccode"];

        

        request.HTTPMethod = @"POST";

        [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];

        NSString *args = [self convertToJsonData:parameters];//函数

        request.HTTPBody = [args dataUsingEncoding:NSUTF8StringEncoding];

        // 3.获得会话对象

        NSURLSession *session = [NSURLSession sharedSession];

        // 4.根据会话对象,创建一个Task任务

        NSURLSessionDataTask *sessionDataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {

            

            

            

            // 10、判断是否请求成功

            if (error) {

                NSLog(@"post1 error :%@",error.localizedDescription);

            } else {

                NSLog(@"返回的response信息%@",response);

                id object1 = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];

                // 11、判断是否解析成功

                if (error) {

                    NSLog(@"post2 error :%@",error.localizedDescription);

                }else {

                    NSLog(@"请求成功");

                    // 解析成功,处理数据,通过GCD获取主队列,在主线程中刷新界面。

                   }

             }

        }];

        

        [sessionDataTask resume];



//函数

- (NSString *)convertToJsonData:(NSDictionary *)dict {

    NSError *error;

    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&error];

    NSString *jsonString;

    if (!jsonData) {

        NSLog(@"%@", error);

    } else {

        jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

    }

    NSMutableString *mutStr = [NSMutableString stringWithString:jsonString];

    [mutStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];//去掉字符串中的空格

    NSRange range2 = {0, mutStr.length};

    [mutStr replaceOccurrencesOfString:@"\n" withString:@" " options:NSLiteralSearch range:range2];//去掉字符串中的换行符

    

    return mutStr;

}





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值