为什么网页视图会崩溃
Why does web view crashes
我在 WKWebView 中调用一个网页,但当我启动应用程序时它总是崩溃,并显示以下错误消息:
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an
Optional value.
我的代码如下
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!))
我怀疑参数中的“|
”字符弄乱了您的 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")
}
发生这种情况,因为无法解析您尝试访问的 url。
此外,您最好使用可选绑定而不是强制解包。
这里是您可以检查有效的代码 url:
if let url = URL(string: "your url") {
webView.load(URLRequest(url: url))
} else {
print("could not open url, it is nil")
}
我在 WKWebView 中调用一个网页,但当我启动应用程序时它总是崩溃,并显示以下错误消息:
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value.
我的代码如下
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!))
我怀疑参数中的“|
”字符弄乱了您的 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")
}
发生这种情况,因为无法解析您尝试访问的 url。
此外,您最好使用可选绑定而不是强制解包。
这里是您可以检查有效的代码 url:
if let url = URL(string: "your url") {
webView.load(URLRequest(url: url))
} else {
print("could not open url, it is nil")
}