load - Swift 4:在 iOS 应用程序中加载网页内容时出错
问题描述
我在 Xcode 9 中创建的应用程序需要加载网页内容,所以我按照如何从网站 URL 加载字符串中建议的代码
if let url = URL(string: "https://flightplanning.navcanada.ca/cgi-bin/Fore-obs/notam.cgi?ni_FIR=on&Stations=CZEG") {
do {
let contents = try String(contentsOf: url)
print(contents)
} catch {
// contents could not be loaded
}
} else {
// the URL was bad!
}
从其他各种线程来看,info.plist 文件似乎有问题,因此按照这些建议,我在 info.plist 中添加了以下条目: info.plist added entries
在 info.plist 文件中看起来像这样:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSExceptionDomains</key>
<dict>
<key>flightplanning.navcanada.ca</key>
<dict/>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSIncludesSubdomains</key>
<true/>
</dict>
</dict>
返回的错误:
SSL_ERROR_SSL(1): operation failed within the library
SSLV3_ALERT_HANDSHAKE_FAILURE:/BuildRoot/Library/Caches/com.apple.xbs/Sources/boringssl_Sim/boringssl-109.50.14/ssl/tls_record.c:547:SSL alert number 40
HANDSHAKE_FAILURE_ON_CLIENT_HELLO
Function boringssl_context_get_os_status: line 4268 SSL_AD_HANDSHAKE_FAILURE
TIC TCP Conn Failed
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824)
Task <AB92C36B-6E8A-42E5-9C3E-73AF6E258F43>.<0> HTTP load failed (error code: -1200 [3:-9824])
NSURLConnection finished with error - code -1200
任何纠正建议将不胜感激。
解决方案
推荐阅读
- php - PHP - 有什么方法可以区分 unset 和 null 吗?
- javascript - suiteCRM 错误 40 中的 JOIN 子查询,("name":"Access Denied","number":40,"description":"You do not have access")
- docker - Nginx 无法访问 SSL 证书
- arrays - 将字符串添加到数组
- java - Android:如何自动更改视频活动中的方向?
- c++ - 抛出 'std::invalid_argument' what(): stof 的实例后调用终止
- javascript - 400 Bad request for Token Get Pair, Django REST simpleJWT and Vue 3 composition API
- javascript - 未捕获的类型错误:无法读取未定义的属性“addLayer”
- python - 时变激励的 odeint
- typescript - TypeScript SyntaxError:使用类型声明时出现意外标识符