如何在 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)

如果这不是您要找的,请添加更多要点以使您的问题易于理解,谢谢:)