HTTPS 演练

HTTPS

NSURLSession HTTPS 访问

/**

接收到身份质询 Challenge

身份质询保存在受保护空间内!

* 完成回调参数

- NSURLSessionAuthChallengeDisposition

NSURLSessionAuthChallengeUseCredential = 0,                 使用指定的凭据

NSURLSessionAuthChallengePerformDefaultHandling = 1,        对身份质询的默认处理

NSURLSessionAuthChallengeCancelAuthenticationChallenge = 2, 取消请求,忽略凭据参数

NSURLSessionAuthChallengeRejectProtectionSpace = 3,         本次忽略质询

- NSURLCredential 证书

*/

- (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential *))completionHandler {

NSLog(@"%@", challenge.protectionSpace);

// 判断身份质询方式是否是信任证书

if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) {

NSURLCredential *credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust];

// 回调信任受保护空间中的身份质询

completionHandler(NSURLSessionAuthChallengeUseCredential, credential);

}

}

NSURLConnection HTTPS 访问

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

NSURL *url = [NSURL URLWithString:@"https://baidu.com"];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

[NSURLConnection connectionWithRequest:request delegate:self];

}

- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {

NSLog(@"%@", challenge);

if (challenge.protectionSpace.authenticationMethod == NSURLAuthenticationMethodServerTrust) {

NSLog(@"%@", challenge.sender);

NSURLCredential *credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust];

[[challenge sender] useCredential:credential forAuthenticationChallenge:challenge];

}

}

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {

[self.data setData:nil];

}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {

[self.data appendData:data];

}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {

NSLog(@"%@", [[NSString alloc] initWithData:self.data encoding:NSUTF8StringEncoding]);

}

- (NSMutableData *)data {

if (_data == nil) {

_data = [NSMutableData data];

}

return _data;

}

AFN HTTPS 访问

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

manager.securityPolicy.allowInvalidCertificates = YES;

manager.responseSerializer = [AFHTTPResponseSerializer serializer];

[manager GET:@"https://mail.itcast.cn" parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {

NSLog(@"%@", [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding]);

} failure:^(NSURLSessionDataTask *task, NSError *error) {

NSLog(@"%@", error);

}];

}

时间: 2024-10-23 08:45:54

HTTPS 演练的相关文章

屏谖畔涨善ab63gro0l16rstpb58

中新社首尔4月13日电 (记者 吴旭)韩国第20届国会议员选举于当地时间13日18时结束投票.据韩国中央选举管理委员会公布的初步统计数据显示,本届国会议员选举投票率为58%,较上一届高出3.8个百分点.最终确定投票结果将于14日上午予以公布.从选区来看,全罗南道.全罗北道投票率领先,均突破60%,而大邱.釜山.京畿道及仁川地区投票率则低于平均值.在选举"主战场"首都圈地区,首尔以59.8%的投票率超出均值.根据目前初步统计结果,本届选举的投票率虽然没有超过事前预测的60%,但较第18届

噬鸵叟客切q08c365s

新华社瓦莱塔4月10日电(记者李拯宇 李佳)全国政协主席俞正声10日在前往非洲三国进行正式友好访问途中过境马耳他,在瓦莱塔会见马耳他议长法鲁贾. 俞正声说,中马保持长期友好关系,政治上相互信任,经济上密切合作,人文交流不断深化.中方感谢马方在中国撤侨行动中给予的支持和帮助.中方愿同马方一道,落实两国领导人达成的共识,弘扬中马传统友好,拓展在科技.渔业.旅游等领域互利合作,打造合作新亮点.中国全国政协愿与马耳他议会和社会各界保持密切交往,加强治国理政经验交流,为两国扩大务实合作营造良好环境,共同促

蚜戮苛裂退q47uc785b3

新华社瓦莱塔4月10日电(记者李拯宇 李佳)全国政协主席俞正声10日在前往非洲三国进行正式友好访问途中过境马耳他,在瓦莱塔会见马耳他议长法鲁贾. 俞正声说,中马保持长期友好关系,政治上相互信任,经济上密切合作,人文交流不断深化.中方感谢马方在中国撤侨行动中给予的支持和帮助.中方愿同马方一道,落实两国领导人达成的共识,弘扬中马传统友好,拓展在科技.渔业.旅游等领域互利合作,打造合作新亮点.中国全国政协愿与马耳他议会和社会各界保持密切交往,加强治国理政经验交流,为两国扩大务实合作营造良好环境,共同促

中三他身东取必信史规不

对啊我恍然大悟凌月果然心细如尘啊 但是凌月的雪却隐藏着绝强的杀伤力下一刻突然一大片冰雪在血饮的人群中爆开顿时傲世狂人和傲世嗜血均是大惊失色忍不住道居然那么高的防御 但是级别却只有级而已不过这已经足以傲视群雄了因为我的等级已经一下子窜到了中国排名的第位只要再努力一把完全可以在等级榜上崭露头角了顿时傲世狂风和傲世狂剑两个大惊失色注已经全部被吸引了过去不客气就不客气谁怕谁啊但是这一切也只是为了杀最后的而清理路障而已那个食人魔首领才是我们真正此行的目的嗯出去吃夜宵吧秦韵亲手做的 嗯那好吧凌雪又叮嘱了我一

C#网络编程技术FastSocket实战项目演练

一.FastSocket课程介绍 .NET框架虽然微软提供了socket通信的类库,但是还有很多事情要自己处理,比如TCP协议需要处理分包.组包.粘包.维护连接列表等,UDP协议需要处理丢包.乱序,而且对于多连接并发,还要自己处理多线程等等.本期分享课程阿笨给大家带来的是来源于github开源Socket通信中间件:FastSocket,目的就是把大家从繁琐的网络编程技术中彻底地解放和释放出来. 阿笨只想安安静静的学习下网络编程技术Socket后,将学习的成果直接灵活的运用到自己的实际项目中去.

redis演练(8) redis Cluster 集群环境安装

redis是个分布式缓存,与传统数据库最大的优势,在于它的"分布式"上. 分布式的优势: 容易实现容量的扩展 数据的均等分布 很好的高可用性 redis 和memcached是分布式缓存的两款流行方案,他们之间的对比 redis memcached 主从功能 Replication 支持 主备自动切换 本身不支持,可以通过客户端自己实现 键值一致性 哈希槽 一致性哈希 集群 服务端支持(但是beta版) unstable 由客户端实现 工具支持 提供自带的工具(客户端redis-cli

Git命令行演练-团队开发

** 团队开发必须有一个共享库,这样成员之间才可以进行协作开发** ### 0. 共享库分类 > 本地共享库(只能在本地面对面操作)        - 电脑文件夹/U盘/移动硬盘 > 远程共享库(可通过网络远程操作)        - 自己搭建Git服务器(**不建议**)        - 在Github上托管项目(** 建议**)            Github网址(https://github.com); 公开项目免费, 私有项目收费        - 在OSChina上托管项目(*

memcached演练(1) 搭建memcached服务

memcached已经火了好多年了,现在网上关于memcached的资源相当多了,我就不浪费话语了.干脆写一个实战系列,坚持一切用实施说话. 环境介绍 Linux虚拟机 内核信息 [[email protected] ~]# uname -aLinux hadoop1 2.6.32-358.el6.i686 内存:1G 安装过程 1.准备编译环境,安装必须的gcc,make工具,如果没有安装yum,最好安装下.网上有很多共享的yum源. 2.下载最新版本的libevent # wget http

Exchange2013灾难恢复演练--Exchange管理员必须掌握的技能

说到Exchange的灾难恢复,相信作为一个企业管理员是最为重要的掌握技能,因为灾难会随时出现,所以作为一个企业管理员需要对Exchange的相关功能及灾难恢复演练做的相当信息,这样一旦出了问题会在最短的时间内恢复,当然作为一个企业管理员的话,会尽量避免所管理服务出现重大问题,所以管理员经常会对一些服务做一些健康检查,尽可能的保证服务的健康性,同样我也作为一个管理员,近期做了一些Exchange的相关的服务灾难演练,总结了一下,分享给有需要的童鞋. 我的环境中暂时放了两台服务器,一台为Excha