【问题标题】:AFNetworking https request not workingAFNetworking https 请求不起作用
【发布时间】:2013-11-06 08:56:52
【问题描述】:

我尝试连接到 https 服务器,但收到错误 -1012(NSErrorFailingURLKey)。如果我尝试连接到 http,那么一切都很好。但我应该连接到 https。它可以是什么?我尝试通过 AFNetworking v1.0 和 v2.0 进行连接。我使用过 AFHTTPRequestOperation、AFHTTPRequestOperationManager、AFHTTPClient 等。 附:当我尝试通过 firebug 连接到 https 时,一切都很好。我的意思是,服务器运行良好。

【问题讨论】:

  • 你能显示一些代码吗?

标签: objective-c afnetworking afnetworking-2


【解决方案1】:

尝试使用#define _AFNETWORKING_ALLOW_INVALID_SSL_CERTIFICATES_ 1 以允许无效或自签名证书。

默认情况下是不允许的,见AFURLConnectionOperation.h

【讨论】:

    【解决方案2】:

    AFNetworking 中的安全策略声明allowInvalidCertificates 默认为NO。您需要将其设置为YES

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.securityPolicy.allowInvalidCertificates = YES; // not recommended for production
    

    更多详情: https://github.com/AFNetworking/AFNetworking#security-policy

    【讨论】:

      【解决方案3】:

      我正在使用较新版本的 AFNetworking 库,但 #define 无法正常工作。

      问题已通过在客户端本身上将属性 allowsInvalidSSLCertificate 设置为 YES 得到解决:

      httpClient.allowsInvalidSSLCertificate = YES;
      

      【讨论】:

      • @ghazi_jaffary 它是 AFHTTPClient 的一个实例
      • 好的,我一直在使用没有 AFHTTPClient 类的 2.0 版本,所以我想知道。谢谢
      • 什么“新版本”。请说明。 HTTPClient 甚至可以与 AFNetworking v2 一起使用吗?
      【解决方案4】:

      它对我有用:

      AFHTTPSessionManager* manager = [AFHTTPSessionManager manager];
      manager.requestSerializer = [AFJSONRequestSerializer serializer];
      manager.responseSerializer = [AFJSONResponseSerializer serializer];
      [manager POST: urlString parameters:bodyDict
           success:^(NSURLSessionDataTask *task, id responseObject){
      
           return;
           }
           failure:^(NSURLSessionDataTask *task, NSError *error){
      
            failBlock(error);
           }
       ];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多