从iOS 9及更高版本开始,Apple已强制用户使用特定主机进行HTTPS请求以实现安全目的,或者如果必须进行HTTP请求,Apple希望用户在plist中提供与此相同的异常。
就像是:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSExceptionDomains</key>
<dict>
<key>api.themoviedb.org</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
但是,如果我从plist中删除此代码,并在设备上运行我的代码(iOS 11),它仍然正确地加载HTTP请求,而不会发出任何警告。
问题是,如果Apple强制使用HTTPS,为什么我能够在没有任何警告的情况下进行HTTP呼叫?
似乎没有根据@KrauseFX https://twitter.com/KrauseFx/status/942741438890233856最近的推特谈话
以为我会分享