iOS开发中实现支持HTTPS,有两种方法:一是后台那边都处理好了,移动端直接可以使用HTTPS接口,二是后台给移动端一个服务器证书cer 文件,这时我们就需要将cer文件导入到我们的工程中,以下是实现方法

1. 双击证书,这时证书已经添加到了钥匙串中

2. 将cer 文件拖入工程中

3. 如果使用的是AFNetwotking 的话,在代码中添加以下代码

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

 //证书
 AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
 manager.securityPolicy = securityPolicy;
 // 2.设置证书模式
 NSString * cerPath = [[NSBundle mainBundle] pathForResource:@"tomcat" ofType:@"cer"]; //tomcat是cer文件的名称
 NSData * cerData = [NSData dataWithContentsOfFile:cerPath];
 manager.securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate withPinnedCertificates:[[NSSet alloc] initWithObjects:cerData, nil]];
 // 客户端是否信任非法证书
 manager.securityPolicy.allowInvalidCertificates = YES;
 // 是否在证书域字段中验证域名
 [manager.securityPolicy setValidatesDomainName:NO];

至此就已经完成支持HTTPS了

以上这篇iOS开发实现HTTPS之cer文件的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

文件参考:

http://www.jianshu.com/p/6b9c8bd5005a
http://www.cnblogs.com/kyrios/p/tls-and-certificates.html

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。