繁体   English   中英

AFNetwork错误:错误域= NSURLErrorDomain代码= -1012

[英]AFNetwork Error:Error Domain=NSURLErrorDomain Code=-1012

我使用AFNetwork如下。 首先,我将安全策略设置如下:

  -(AFSecurityPolicy*)customSecurityPolicy:(BOOL)isHTTPS
  {
    if (isHTTPS) {
        NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"ehub-mobile" ofType:@".cer"];
        NSData *certData = [NSData dataWithContentsOfFile:cerPath];
        AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModePublicKey];
        [securityPolicy setPinnedCertificates:@[certData]];
        [securityPolicy setValidatesDomainName:NO];
        [securityPolicy setAllowInvalidCertificates:YES];
        return securityPolicy;
    }
    else
    {
        AFSecurityPolicy *securityPolicy = [AFSecurityPolicy defaultPolicy];
        return securityPolicy;
    }
  }

接下来是设置经理:

    -(void)UserLoginRequest:(NSString *)name Session:(NSString *)session
  {
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

    manager.securityPolicy = [self customSecurityPolicy:YES];

    NSString *uName = name;
    NSString *uToken = session;
    NSDictionary *parameters = @{@"username": uName,@"token":uToken};
    ServerURLAddress *sua = [[ServerURLAddress alloc]init];
    NSString *server = [NSString stringWithFormat:@"%@/session",
                        [sua serverURLAddress]];
    server = [server stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    [manager POST:server parameters:parameters
          success:^(AFHTTPRequestOperation *operation, id responseObject) {
              [self DisableSingleTap];
              NSString *lg_rep = operation.responseString;
              [self SeizeTheLoginInfo:lg_rep];
          }
          failure:^(AFHTTPRequestOperation *operation, NSError *error) {
              NSLog(@"%@",error);
              [self EnableSingleTap];
          }];
  }

但它只是出现这个错误,它出现在“失败”块中,我使用NSLog函数打印它:

Error Domain=NSURLErrorDomain Code=-1012 "(null)" 
UserInfo={NSErrorFailingURLKey=https://xxx.xxx.com

我读了很多文章,但我仍然找不到任何解决方案。 请给我一些提示!

尝试这个,

AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeNone];
[securityPolicy setValidatesDomainName:NO];
[securityPolicy setAllowInvalidCertificates:YES];
manager.securityPolicy = securityPolicy;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM