iOS 9的SSL代理功能
在iOS设备上安装Charles的根SSL证书后,您即可对应用程序启用SSL代理功能。从Charles 3.11.4版本开始,该功能已支持在iOS 9系统上编译运行且启用应用传输安全(App Transport Security)的应用程序。
请注意:部分应用程序采用SSL证书锁定技术,会强制校验根证书,此类应用无法与Charles配合使用。
若您的设备运行iOS 10.3或更高版本,需额外完成证书信任设置:打开设置应用,进入 通用 > 关于本机 > 证书信任设置,找到Charles代理证书并启用完全信任(iOS 10此项变更的更多说明)。
若您开发的应用程序仍无法使用SSL代理,可尝试禁用ATS。具体方法是在应用的Info.plist文件中添加如下键值(详见苹果技术文档):
重要提示:应用发布前请务必重新启用ATS,以保障应用传输安全机制提供的防护。
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>