SwiftUI:WebView 不加载特定页面

SwiftUI: WebView doesn't load specific page

我尝试在我的 WebView 中加载一个 url,它适用于“https://www.google.com”,但不适用于“https://[=24” =]”。 它显示“未找到,HTTP 错误 404:未找到请求的资源。”

奇怪的是,如果我在Google页面中google“sl.se”,点击sl.se,“www.sl.se”可以加载 WebView。有谁知道原因吗?

ContentView.swift

// ContentView.swift

struct ContentView: View {
    @State private var shouldRefresh = false
        var body: some View {
            VStack{
                Button(action: {
                    self.shouldRefresh.toggle()                    
                }){
                    Text("Reload")
                }
                WebView(url: nil, reload: $shouldRefresh)
            }
        }
}

WebView.Swift

// WebView.swift

import WebKit
import SwiftUI

struct WebView: UIViewRepresentable{

    var url: URL?     // optional, if absent, one of below search servers used
    @Binding var reload: Bool

    private let urls = [URL(string: "https://google.com/")!, URL(string: "https://www.sl.se")!]
    private let webview = WKWebView()

    fileprivate func loadRequest(in webView: WKWebView) {
        if let url = url {
            webView.load(URLRequest(url: url))
        } else {
            let index = Int(Date().timeIntervalSince1970) % 2
            print("load: \(urls[index].absoluteString)")
            webView.load(URLRequest(url: urls[index]))
        }
    }

    func makeUIView(context: UIViewRepresentableContext<WebView>) -> WKWebView {
        loadRequest(in: webview)
        return webview
    }

    func updateUIView(_ uiView: WKWebView, context: UIViewRepresentableContext<WebView>) {
        if reload {
            loadRequest(in: uiView)
            DispatchQueue.main.async {
                self.reload = false     // must be async
            }
        }
    }
}

您的代码没有任何问题。您只需要从 URL 中删除 www。试试 https://sl.se 就可以了。