如何在 webview 中打开重定向的页面?
How can I open redirected page in webview?
我在转换数据时遇到了一些问题。
我的代码如下所示:
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data,
let response = response as? HTTPURLResponse,
error == nil else {
// check for fundamental networking error
print("error", error ?? "Unknown error")
return
}
guard (200 ... 299) ~= response.statusCode else {
// check for http errors
print("statusCode should be 2xx, but is \(response.statusCode)")
print("response = \(response)")
return
}
let responseString = String(data: data, encoding: .utf8)
print("responseString = \(responseString ?? "")")
DispatchQueue.main.async {
let webVC = WebViewController(urlString: responseString!)
self.navigationController?.pushViewController(webVC, animated: true)
}
} task.resume()
responseString 输出:"html page code"
我需要将数据转换为 url 字符串或类似于 url 的内容吗?
我该如何解决?谢谢你的时间
你的'redirect'是什么意思?
如果只有 302 HTTP 响应使用 WKWebView:https://developer.apple.com/documentation/webkit/wkwebview 而不是 URLSession
如果您必须解析URL会话响应,您必须获取结果并与您的服务器端程序员讨论响应。 responseString prints: "html page code"
明显不正确URL
在 WKWebview 中加载 HTML 字符串(只需导入 WebKit)
let webView = WKWebView()
webView.loadHTMLString("<html><body><p>Hello!</p></body></html>", baseURL: nil)
在 UIWebview 中加载 HTML 字符串
let webView = UIWebView()
webView.loadHTMLString("<html><body><p>Hello!</p></body></html>", baseURL: nil)
如果这不是您要找的,请添加更多要点以使您的问题易于理解,谢谢:)
我在转换数据时遇到了一些问题。 我的代码如下所示:
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data,
let response = response as? HTTPURLResponse,
error == nil else {
// check for fundamental networking error
print("error", error ?? "Unknown error")
return
}
guard (200 ... 299) ~= response.statusCode else {
// check for http errors
print("statusCode should be 2xx, but is \(response.statusCode)")
print("response = \(response)")
return
}
let responseString = String(data: data, encoding: .utf8)
print("responseString = \(responseString ?? "")")
DispatchQueue.main.async {
let webVC = WebViewController(urlString: responseString!)
self.navigationController?.pushViewController(webVC, animated: true)
}
} task.resume()
responseString 输出:"html page code"
我需要将数据转换为 url 字符串或类似于 url 的内容吗? 我该如何解决?谢谢你的时间
你的'redirect'是什么意思?
如果只有 302 HTTP 响应使用 WKWebView:https://developer.apple.com/documentation/webkit/wkwebview 而不是 URLSession
如果您必须解析URL会话响应,您必须获取结果并与您的服务器端程序员讨论响应。 responseString prints: "html page code"
明显不正确URL
在 WKWebview 中加载 HTML 字符串(只需导入 WebKit)
let webView = WKWebView()
webView.loadHTMLString("<html><body><p>Hello!</p></body></html>", baseURL: nil)
在 UIWebview 中加载 HTML 字符串
let webView = UIWebView()
webView.loadHTMLString("<html><body><p>Hello!</p></body></html>", baseURL: nil)
如果这不是您要找的,请添加更多要点以使您的问题易于理解,谢谢:)