【发布时间】:2019-06-26 18:04:57
【问题描述】:
已经找到相同的线程here,但这并没有解决我的问题。
我在 info.plist 中添加了 NSAppTransportSecurity 和 NSAllowsArbitraryLoads。
截图:
添加了this文章中的以下代码。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>pm-admin.smartwcm.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionAllowInsecureHTTPSLoads</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<true/>
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
<key>NSThirdPartyExceptionAllowInsecureHTTPSLoads</key>
<false/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<true/>
<key>NSThirdPartyExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
<key>NSRequiresCertificateTransparency</key>
<false/>
</dict>
</dict>
</dict>
我正在使用 HTTP REST API。 运行项目时出现以下异常:
System.Net.WebException:发生 SSL 错误,无法与服务器建立安全连接。 ---> Foundation.NSErrorException: Error Domain=NSURLErrorDomain Code=-1200 “发生 SSL 错误,无法与服务器建立安全连接。” UserInfo={NSLocalizedRecoverySuggestion=您还是要连接到服务器吗?
我是否遗漏了什么或做错了什么?
【问题讨论】:
-
SSL证书有效吗?它是否连接到证书上的主机名?证书是自发的吗?如果您在浏览器中打开 url,您会收到与证书相关的任何提示吗?
-
@Maximilian 我在另一个应用程序中拥有相同的其余 API,该应用程序已经在应用商店中。这是一个公共的rest api,如果它在浏览器中打开没有问题..
-
@Maximilian 我所有的 REST API 都是 HTTP,如果我把它改成 HTTPS 可以吗?
-
这很可能会解决问题
标签: ios ssl xamarin.forms webexception