最近将项目整个都支持了https了,用的是AFN,其实AFN本来就支持https的,只需要把ssl证书放在工程里,然后读取出来,加入到请求中即可,来看一下我用的方法:
AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
mgr.requestSerializer = [AFJSONRequestSerializer serializer];
mgr.responseSerializer = [AFJSONResponseSerializer serializer];
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
NSString * cerPath = [[NSBundle mainBundle] pathForResource:@"https1" ofType:@"cer"];
NSData * cerData = [NSData dataWithContentsOfFile:cerPath];
securityPolicy.pinnedCertificates = [[NSArray alloc] initWithObjects:cerData, nil];
// 客户端是否信任非法证书
securityPolicy.allowInvalidCertificates = YES;
// 是否在证书域字段中验证域名
[securityPolicy setValidatesDomainName:NO];
mgr.securityPolicy = securityPolicy;
OK了,这样就支持HTTPS了