Swift HTTP加载失败(kCFStreamErrorDomainSSL,-9806(IOS9)
在模拟器上运行应用程序时,我在iOS 9上获取NSURLSession/NSURLConnection HTTP加载失败。 下面是我的info.plist文件的外观Swift HTTP加载失败(kCFStreamErrorDomainSSL,-9806(IOS9),swift,info.plist,xcode7,ios9,Swift,Info.plist,Xcode7,Ios9,在模拟器上运行应用程序时,我在iOS 9上获取NSURLSession/NSURLConnection HTTP加载失败。 下面是我的info.plist文件的外观 <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> <key>NSInclude
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSIncludesSubdomains</key>
<true/>
<!--Include to allow insecure HTTP requests-->
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<!--Include to specify minimum TLS version-->
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
NSAppTransportSecurity
NSAllowsArbitraryLoads
n包括多个域
NSTemporary ExceptionalLowsInSecureHttpLoads
NSTemporaryExceptionMinimumTLSVersion
TLSv1.1
即使在输入这些键值之后,Xcode控制台上也会显示相同的错误。请协助
这是info.plist
非常感谢!您需要定义要应用这些规则的URL。 您可以在苹果的文档页面上找到正确的声明: 因此,基本上你的Info.plist应该是这样的,包括域 注意:为了提高透明度,我还将
NSAllowsArbitraryLoads
的默认值重新声明为false
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSExceptionDomains</key>
<dict>
<key>yourdomain.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
NSAppTransportSecurity
NSAllowsArbitraryLoads
NSExceptionDomains
yourdomain.com
n包括多个域
NSAllowsArbitraryLoads
NSTemporaryExceptionMinimumTLSVersion
TLSv1.1
NSTemporary ExceptionalLowsInSecureHttpLoads
致以最良好的祝愿
如果您不关心所有这些ssl混乱(我不建议这样做),只想调试您的UI,您也可以暂时使用非默认的App TransportSecurity,并允许任何操作:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
NSAppTransportSecurity
NSAllowsArbitraryLoads
我不确定苹果是否会在AppStore审查中通过;-)是的,它确实通过了。有许多应用程序在构建时并不知道链接到底指向哪些域。有充分的理由在RSS阅读器等中启用此功能。我已禁用所有的ATS,但请求仍然失败