ios 添加 http 请求

http 请求

ios 9之后苹果不建议用 http 来请求,不过可以设置 http 的请求。
请求方式如下:


<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
        <key>NSExceptionDomains</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
    </dict>

打开 plist 文件添加以上代码

加上这个就可以 http 请求了。

AF 请求


    NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
    AFHTTPSessionManager *manager = [[AFHTTPSessionManager manager] initWithBaseURL:URL(kHostUrl)
                                                               sessionConfiguration:config];
    //添加单项的 https
    manager.securityPolicy.allowInvalidCertificates = YES;
    manager.securityPolicy.validatesDomainName = NO;

    //设置 请求参数和返回数据格式
    manager.responseSerializer  = [AFJSONResponseSerializer serializer];
    manager.requestSerializer   = [AFJSONRequestSerializer serializer];

    manager.requestSerializer.timeoutInterval = 60; // 超时时间

    // 请求头
    [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",
                                                         @"text/json", @"text/javascript", @"text/html",@"text/plain",@"charset/UTF-8",nil];

    DLog(@"\n\n~~接口参数:~~%@",dic);

    // post 方式请求
    [manager  POST:@"services/requestsreq/"
        parameters:dic
          progress:^(NSProgress * _Nonnull uploadProgress) {

     } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {

         NSString *jsonString = nil;
         NSError *error;
         NSData *jsonData = [NSJSONSerialization dataWithJSONObject:responseObject
                                                            options:NSJSONWritingPrettyPrinted
                                                              error:&error];
         // 打印原始数据(汉字没有被转移)
         jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

     } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {

         NSHTTPURLResponse *response = (NSHTTPURLResponse *)task.response;
         DLog(@"statusCode = %ld",(long)response.statusCode);  // http code
     }];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值