App Transport Security在允许时阻止http请求

时间:2015-10-07 08:53:00

标签: ios swift plist nsurlrequest

大家好。我在ios9上的应用传输安全性在共享扩展方面存在奇怪问题。我们的项目有2个目标,ios项目(基于phonegap)和本机共享延期。在两个目标上,我们都执行非https请求,并且在两个目标上我都添加了

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

到.plist文件,因此应关闭ATS。 在应用程序上它工作,我可以毫无问题地执行非https请求,但在共享扩展时,它仍然阻止我的请求 **See screenshot here**

有人知道我们该如何修复它?

1 个答案:

答案 0 :(得分:1)

您应该首先允许您的特定域名。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>api.domainname.com</key>
        <dict>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
        <key>dev.domainname.com</key>
        <dict>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>