ios - 加强 iOS 应用程序传输安全

标签 ios iphone http alamofire

从 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

我想分享

关于ios - 加强 iOS 应用程序传输安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48022557/

相关文章:

android - Flutter - 当我运行 print(myFile.absolute.path) 时,myFile 不在范围内

iphone - 在 ios 中调用方法时的超精度

ios - 使用 XCode 访问应用程序数据

iphone - 释放 Controller ,但保留空指针?

java - 转换 Mule HttpRequest 'GET' 响应

ios - 普通核心数据 vs 核心数据 + 魔法记录

iphone - iOS 中的 “Property implementation must have its declaration in interface” 错误

iphone - 应用内购买完成后显示对话

java - Java如何与http网页上的按钮进行交互?

regex - 查询字符串退化情况