我用Xcode和Swift制作了一个只有WebView的iOS应用程序.有时网站,由WebView呈现,崩溃.在这种情况下,我想重新加载WebView.
为此,我读到iOS 9中有一个新的触发器,在以下情况下调用:
Web视图的Web内容过程终止.
来源:iOS开发者库
所以我将此函数添加到我的ViewController文件中:
func webViewWebContentProcessDidTerminate(webView: WKWebView){
print("Reload");
self.webView!.reload();
}
Run Code Online (Sandbox Code Playgroud)
但是当我的网站崩溃时没有任何附加内容,所以我想知道:在哪种情况下调用webViewWebContentProcessDidTerminate?
我尝试访问带有重音的网址,但它不起作用:
#!/usr/bin/python3.3
# -*- coding: utf-8 -*-
import urllib.request
response = urllib.request.urlopen("http://nominatim.openstreetmap.org/search.php?city=Lévis&format=json")
content = response.read()
print(content)
Run Code Online (Sandbox Code Playgroud)
当我执行此代码时,我有这个错误作为回报
UnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 22: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)
所以我试试这个
response = urllib.request.urlopen("http://nominatim.openstreetmap.org/search.php?city=Lévis&format=json".encode("UTF-8"))
Run Code Online (Sandbox Code Playgroud)
但仍然是一个错误
AttributeError: 'bytes' object has no attribute 'timeout'
Run Code Online (Sandbox Code Playgroud)
你有什么想法我错了吗?