我是iOS编程的新手。我想将我的应用程序连接到my web service (HTTPS)。
当我在iOS 10中使用'Alamofire 4.0'运行POST请求时,为什么XCode会告诉我这个错误?
使用iOS 9模拟器时不会出现此错误。我已经尝试过各种方式,就像人们对stackoverflow说的那样,没有一个能解决我的问题。
更新:
我在info.plist中添加了这个,但仍然得到同样的错误。
如何在iOS 10中实现ATS?
提前致谢。
在我的情况下,我更改了我的API域上的SSL证书与Apple在this link中提到的可信任的SSL证书。
应用程序传输安全(ATS)在应用程序及其后端之间的安全连接中实施最佳实践。 ATS防止意外泄露,提供安全的默认行为,并且易于采用;它在iOS 9和OS X v10.11中默认也是打开的。无论您是创建新应用程序还是更新现有应用程序,都应尽快采用ATS。
如果您正在开发新应用,则应该专门使用HTTPS。如果您有现有应用,则应尽可能多地使用HTTPS,并创建一个计划,以便尽快迁移其余应用。此外,您通过更高级别的API进行的通信需要使用具有前向保密性的TLS 1.2版进行加密。如果尝试建立不符合此要求的连接,则会引发错误。如果您的应用需要向不安全的域发出请求,则必须在应用的Info.plist文件中指定此域。
有关更多详情,请参阅Apple Document.
您需要在Info.plist中进行更改
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
要么
检查您的移动网络,这主要是原因。