NSURLSession http转Https

1.设置代理

NSURLSession *sesson = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration] delegate:self delegateQueue:[[NSOperationQueue alloc]init]];

2.在代理方法中实现对证书的操作

方法一:这是在开发者足够信任后端的安全的情况下做的,比如调个接口,这样做的结果就是忽略证书的验证,直接信任。

- (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential * _Nullable))completionHandler{if([challenge.protectionSpace.authenticationMethodisEqualToString:NSURLAuthenticationMethodServerTrust]){//服务器信任证书NSURLCredential *credential = [NSURLCredentialcredentialForTrust:challenge.protectionSpace.serverTrust];//服务器信任证书if(completionHandler)completionHandler(NSURLSessionAuthChallengeUseCredential,credential);}}

方法二:可以把证书加到工程中,然后https访问时在代理方法中进行证书的验证

- (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential * _Nullable))completionHandler{SecTrustRef servertrust = challenge.protectionSpace.serverTrust;SecCertificateRef certi= SecTrustGetCertificateAtIndex(servertrust, 0);NSData *certidata = CFBridgingRelease(CFBridgingRetain(CFBridgingRelease(SecCertificateCopyData(certi))));NSString *path = [[NSBundle mainBundle] pathForResource:@"https" ofType:@"cer"];NSData *localCertiData = [NSData dataWithContentsOfFile:path];if ([certidata isEqualToData:localCertiData]) {NSURLCredential *credential = [[NSURLCredential alloc] initWithTrust:servertrust];[challenge.sender useCredential:credential forAuthenticationChallenge:challenge];completionHandler(NSURLSessionAuthChallengeUseCredential, credential);NSLog(@"服务端证书认证通过");}else {completionHandler(NSURLSessionAuthChallengeCancelAuthenticationChallenge, nil);NSLog(@"服务端认证失败");}}

在北京的灯中,有一盏是我家的。这个梦何时可以实现?哪怕微微亮。北京就像魔鬼训练营,有能力的留,没能力的走……

NSURLSession htpps证书设置相关推荐

  1. 爬虫:Charles证书设置为系统信任证书(root)

    简介将Charles证书设置为系统信任证书,前提条件是需要root手机. 1.使用MD5计算证书hash值 openssl x509 -subject_hash_old -in D:\Adownloa ...

  2. https证书设置以及设置301跳转

    https证书设置以及设置301跳转 1.在Nginx的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中. 2.打开 Nginx 安装目录下 conf 目录中的 nginx.con ...

  3. 李洪强iOS之集成极光推送二iOS 证书 设置指南

    李洪强iOS之集成极光推送二iOS 证书 设置指南 创建应用程序ID 登陆 iOS Dev Center 选择进入iOS Provisioning Portal. 在 iOS Provisioning ...

  4. win10中Charles从下载安装到证书设置和雷电模拟器或浏览器中抓包测试

    一.下载安装及证书设置 1.在Charles官网https://www.charlesproxy.com/download/下载,我这边下载的是免费体验版的. 体验版用一段时间就会退出,这里另外提供给 ...

  5. Springboot工程配置htpps证书

    Springboot工程配置htpps证书 在配置文件里面做相对应的配置 #https端口 server.port=9911#http端口 server.http.port=29911#强制跳转的端口 ...

  6. window系统创建自签名SSL证书设置Https

    原文链接:https://dsx2016.com/?p=1790 公众号:大师兄2016 应用场景 手机代理到电脑端 使用测试域名调试微信支付,需要在微信内置浏览器和手机自带浏览器唤起微信支付 测试公 ...

  7. 渗透笔记之火狐代理设置证书设置

    渗透笔记之火狐代理设置证书设置 1.火狐浏览器----右上角三横杠----选项 2.选项----高级----设置----不使用代理----确定 3.点击浏览器中间小狐狸 4.双击color蓝色区域-- ...

  8. 关于ssl免费证书设置

    申请免费证书  http://www.startssl.com/ 只能申请class 1的一年期限的免费证书 申请完毕, 在IIS管理器,和"起始页"平级的机器->功能视图- ...

  9. windows系统SSH证书设置

    在客户端终端运行命令 ssh-keygen -t rsa 然后就会显示这两行: Generating public/private rsa key pair. Enter file in which ...

最新文章

  1. 8,协议序列化组件NewLife.Serialization
  2. MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk.
  3. 【已解决】蓝桥杯 2017年C组第五题 杨辉三角(分析与总结)
  4. 黑科技揭秘:如何通过阿里云超算,使得汽车仿真效率提升25%
  5. linux tomcat守护_linux-非root用户运行tomcat(示例代码)
  6. Mr.J--树、二叉树、森林的转换
  7. angularjs -- 页面模板清除
  8. unity 随机数_Unity 雨水滴到屏幕效果
  9. Java多线程售票一张票多买问题
  10. linux suse 安装redis,redis 集群安装问题 【SUSE Linux Enterprise Server 11 SP3】
  11. Pycharm使用---Black代码格式化工具
  12. 操作系统课程设计--银行家算法的模拟实现
  13. MIDAS分布应用程序中的几个问题
  14. Intellij IDEA破解码
  15. 良心安利草皮3d纹理图片素材网站
  16. 为何提示网站安全证书有问题?不同原因下,如何解决?
  17. 常见国际贸易专业术语
  18. 解决 手机能连接上wifi而电脑却却不能连接上wifi的情况
  19. 华为FPGA设计设计规范
  20. OpenStreetMap初探(七)——渲染和地图瓦片之安装Mapnik

热门文章

  1. pycharm 更换 pip 下载源
  2. oracle 导出空行,oracle sqlplus空行处理方法
  3. mybatis 级联查询
  4. ARC下循环引用的问题
  5. Maven系列学习(1)——安装以及本地仓库和仓库镜像的配置
  6. 幼儿剑桥英音版Super Safari123级别学生书PDF+练习册PDF+教师书PDF+白板课件
  7. 富文本数据存储及回显
  8. 机器学习三 归一化_正则化_多项式升维
  9. 利用Ajax爬取今日头条头像,街拍图片。关于崔庆才python爬虫爬取今日头条街拍内容遇到的问题的解决办法。
  10. 浅谈傅里叶——5. 短时傅里叶的缺点与卷积的基本概念