objective-c - iOS 采用https 请求,请问我需要修改一些代码吗?
伊谢尔伦
伊谢尔伦 2017-04-18 09:34:07
[iOS讨论组]

问题大致描述如下:

我用的不是自签名的证书,是向CA购买的ssl证书,请问如何在iOS App中引用并访问Https,具体该如何做呢?
目前我已经处理。但是同时产生了一个问题,如何在UIWebview中不验证子域名的域名地址。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(2)
PHPz
  • 有CA证书的话不需要你做什么。

  • 有些域名没有证书的话,http请求可以禁用安全验证,比如用AFNetworking:

AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeNone];
securityPolicy.allowInvalidCertificates = YES;

[AFHTTPSessionManager manager].securityPolicy = securityPolicy;
  • UIWebView 里据我所知,不使用私有方法的话做不到跳过验证。不过你可以接管整个网页加载,在shouldRequest...里返回NO,然后使用 AFNetworking 下载然后 loadHTML

  • 既然域名没有https证书,那就直接用http好了,在Info.plist里配置下域名白名单:

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>your-domain.com</key>
            <dict>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>   
         </dict>
   </dict>

或者直接允许全部http,因为有些第三方库可能还用的是http:

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
  • 建议将app内使用的所有域名都搞成 https ,因为明年苹果会强制所有app内请求都得是 https

怪我咯

iOS 支持 https 不需要你修改什么代码
检查服务端吧


问题修改了。。不验证子域名又是什么
你定义了 abc.com 和 d.abc.com 然后其中一个配置了 ca 证书另外一个没有?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号