我在转换数据时遇到一些问题。 我的代码如下:
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页面代码”
需要将数据转换为urlString或类似于url的东西吗? 我该如何解决?谢谢您的时间
答案 0 :(得分:0)
您的“重定向”是什么意思?
如果只是302 HTTP响应,请使用WKWebView:https://developer.apple.com/documentation/webkit/wkwebview而非URLSession
如果必须解析URLSession响应,则必须获取结果并与服务器端程序员讨论该响应。 responseString prints: "html page code"
显然是错误的网址
答案 1 :(得分:0)
在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)
如果这不是您想要的内容,请添加更多点以使您的问题易于理解,谢谢:)