iOS AFNetworking SDWebImage HTTPS 请求

简介:

关于2017.1.1号前必须更换HTTPS的说法是谣传,仔细看下搜索结果的文章,都是卖证书的软文谣传出这个日期的,就此事咨询了Apple开发者计划支持给的结果:我了解您想知道有关 HTTPS 的问题,我为您查询过,我们的 WWDC 里有提及过 App Transport Security 要求 HTTPS。但目前为止,我们对于开发者上还没有这个规定,所以,暂时不须马上更改为 HTTPS。一旦有新的规定,我们一定会通知我们的开发者。

最新消息:Apple宣布延期HTTPS更改计划(暂未公布最后期限)

官网链接:https://developer.apple.com/news/?id=12212016b

当然,从去年到今年Apple不断在强调HTTPS的概念,想必不久后更改HTTPS也是趋势,小伙伴们可以先点个喜欢,关注下作者。作者会在后期持续的更新Apple关于HTTPS的相关动态!留着以后备用哦;

先简要说下,证书分两种:

1,自签证书

2,购买的权威ssl证书,大概一个域名一年2000左右,当然也有通配的更贵了;

认证方式也分两种:

1,单向

2,双向

证书相关:协议TLS v1.2 以上,安全等级AES-128 和 SHA-2 以及 ECDHC

如果公司是购买的权威SSL证书(现在有一部分云服务器提供商提供免费认证服务,所以不一定需要购买),那你什么都不用做,只需要把接口http改成https,删掉plist文件里 Allow Arbitrary Loads,到此,你可以点个关注和喜欢就可以关闭此网页了;怎么知道证书是否经过认证:把后台给你的测试链接用浏览器打开,如果有弹窗,一般就是自签的,不受信任的!不弹窗则是经过权威认证的,例如你打开百度,没有弹窗吧;

我这边测试是用的自签证书,单向认证。建议小伙伴们先和后台写个小 demo测试。下面讲下需要做的:

1,得到.crt证书

先给后台发过去这个:TLS v1.2 以上,AES-128 和 SHA-2 以及 ECDHC 等,什么东西呢?证书的安全等级以及一些算法要求之类的,好吧,我被坑了一回,因为后台给我的是 SHA-1,当然我也没提前跟他说。哈哈,然后请求各种不成功;

让后台给你.crt的证书,然后转换成.cer,进入证书所在目录,执行命令:

openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der

然后把.cer导入工程

删掉plist              Allow Arbitrary Loads

2,获取AFSecurityPolicy

+ (AFSecurityPolicy *)customSecurityPolicy

{

//先导入证书,找到证书的路径

NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"https" ofType:@"cer"];

NSData *certData = [NSData dataWithContentsOfFile:cerPath];

    NSLog(@"%@",certData);

//AFSSLPinningModeCertificate 使用证书验证模式

AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];

//allowInvalidCertificates 是否允许无效证书(也就是自建的证书),默认为NO

securityPolicy.allowInvalidCertificates = YES;

//validatesDomainName 是否需要验证域名,默认为YES;

//假如证书的域名与你请求的域名不一致,需把该项设置为NO;如设成NO的话,即服务器使用其他可信任机构颁发的证书,也可以建立连接,这个非常危险,建议打开。

//置为NO,主要用于这种情况:客户端请求的是子域名,而证书上的是另外一个域名。因为SSL证书上的域名是独立的;

//如置为NO,建议自己添加对应域名的校验逻辑。

securityPolicy.validatesDomainName = YES;

NSSet *set = [[NSSet alloc] initWithObjects:certData, nil];

securityPolicy.pinnedCertificates = set;

return securityPolicy;

}


3,AFHTTPSessionManager(就是多加一句代码)

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

manager.responseSerializer = [AFHTTPResponseSerializer serializer];

// 调用刚才的类方法,得到AFSecurityPolicy

[manager setSecurityPolicy:[YLNetworkingManager customSecurityPolicy]];

NSString *url = @"";

[manager POST:url parameters:nil progress:^(NSProgress * _Nonnull uploadProgress) {

} success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {

NSLog(@"%@",responseObject);

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:0 error:nil];

NSLog(@"https:%@",dic);

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

NSLog(@"%@",error);

}];

好了,只不过是加几句代码,不要被网上众多的信息弄懵逼了 0.0,上面已经说了,先问后台是单向认证还是双向,然后证书是自签还是购买的,购买的你只需要把接口的http改成https,我这里是自签的单向认证的;如果有做双向认证的朋友可以参考以下链接:

双向认证:

afn_2.X版本:http://www.68idc.cn/help/jiabenmake/qita/20150508336834.html

afn_3.X版本:http://www.jianshu.com/p/9e573607be13

主要是梳理下,以防萌新蒙蔽,笔者新手上路,老司机勿喷...0.0,不对的还请留言;

SDWebImage 加载HTTPS链接图片

目前找到的方法是跳过验证。

[img sd_setImageWithURL:imgurl placeholderImage:nil options:SDWebImageAllowInvalidSSLCertificates];


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335

推荐阅读更多精彩内容