NT_iOS笔记—NSURLConnection怎么把http改为https
来源:互联网 发布:如何销售数据分析 编辑:程序博客网 时间:2024/06/01 15:24
一直使用NSURLConnection请求HTTP接口,现在为了安全性的考虑打算使用HTTPS。
那么怎么修改呢?
1.不需要证书验证 ps:我们使用的就是这种
1.1 直接修改HTTP为HTTPS;
1.2 确认有 "Security.framework"
1.3 修改完成,可以直接请求了。
2.需要证书验证
其他的和1是一样的,只不过需要加下面方法.
- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge{ static CFArrayRef certs; if (!certs) { NSData*certData =[NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"srca" ofType:@"cer"]]; SecCertificateRef rootcert =SecCertificateCreateWithData(kCFAllocatorDefault,CFBridgingRetain(certData)); const void *array[1] = { rootcert }; certs = CFArrayCreate(NULL, array, 1, &kCFTypeArrayCallBacks); CFRelease(rootcert); // for completeness, really does not matter } SecTrustRef trust = [[challenge protectionSpace] serverTrust]; int err; SecTrustResultType trustResult = 0; err = SecTrustSetAnchorCertificates(trust, certs); if (err == noErr) { err = SecTrustEvaluate(trust,&trustResult); } CFRelease(trust); BOOL trusted = (err == noErr) && ((trustResult == kSecTrustResultProceed)||(trustResult == kSecTrustResultConfirm) || (trustResult == kSecTrustResultUnspecified)); if (trusted) { [challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge]; }else{ [challenge.sender cancelAuthenticationChallenge:challenge]; }}
1 1
- NT_iOS笔记—NSURLConnection怎么把http改为https
- iOS笔记—NSURLConnection怎么把http改为https
- NSURLConnection怎么把http改为https
- NT_iOS笔记—多线程
- NT_iOS笔记—Runtime
- 把Tomcat的http改为https的步骤、方法
- NT_iOS笔记—Git笔记
- NT_iOS笔记—CABasicAnimation用法
- NT_iOS笔记—判断iPhone6
- 在Nginx中,怎么把http全转发为https
- NT_iOS笔记—iOS图片拉伸
- NT_iOS笔记—获取剩余存储空间大小
- NT_iOS笔记—iOS添加字体
- NT_iOS笔记—webview添加Cookie
- 怎么把pdf首页改为其他页面
- NT_iOS笔记—iOS给view添加边框和底线
- NT_iOS笔记—RegexKitLite(stringByReplacingOccurrencesOfRegex:withString:)英文时报错
- NT_iOS笔记—iOS用户添加字体后调用
- schedule 使用
- c++基础知识--类的复制控制(转)
- 深入理解Java反射:候捷谈Java反射机制
- 撒大声大声大声道
- 不懂设计的程序员不是好产品
- NT_iOS笔记—NSURLConnection怎么把http改为https
- tar
- [nginx源码分析]配置解析(location作用域)
- gdb学习(二)
- 开发者总结的WatchKit App提交技巧
- 使用shape.xml配置控件的形状等显示效果
- 序列化 NSKeyedArchiver,NSPropertyListSerialization
- AGS Server 10.1 切图工具
- java 静态块、非静态块、静态函数、构造函数 执行顺序