为什么网页视图崩溃

时间:2018-08-27 19:30:52

标签: ios swift wkwebview

我在WKWebView中调用一个网页,但是启动应用程序时它总是崩溃,并显示以下错误消息:

  

线程1:致命错误:展开包装时意外发现nil   可选值。

我的代码在下面

let param = "https://myapp.mydomain.com/GameAPI/index.jsp?user=0202020767|0202020767"
let url = URL(string: param)
webView.load(URLRequest(url: url!))

此时,nil指向以下代码:

webView.load(URLRequest(url: url!))

2 个答案:

答案 0 :(得分:2)

我怀疑参数中的“ |”字符弄乱了您的URL。

尝试这样做:

let param = "user=0202020767|0202020767"
let escapedParam = param.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)
let fullURLString = "https://myapp.mydomain.com/GameAPI/index.jsp?\(escapedParam)"
if let url = URL(string: fullURLString) {
    webView.load(URLRequest(url: url))
} else {
    Swift.print("url is nil for some reason")
}

答案 1 :(得分:0)

之所以发生这种情况,是因为无法解析您尝试访问的URL。

此外,最好使用可选绑定,而不是强制打开。

以下是您可以使用有效网址检查的代码:

if let url = URL(string: "your url") {
   webView.load(URLRequest(url: url))

} else {
   print("could not open url, it is nil")
}