WKWebView 中的 Google disallowed_useragent

Nig*_*nny 4 xcode ios google-oauth swift wkwebview

我正在尝试将 WebView 用于我的应用程序中的页面,但是在尝试登录 google 时出现错误。 在此处输入图片说明我知道谷歌需要一个已知的操作系统浏览器来登录他们的服务,但有一些方法可以绕过他们的 OAuth。在我的代码中应该在哪里实现让谷歌相信 WebView 是一个浏览器。

    class CycleViewController: UIViewController, WKUIDelegate {

    var window: UIWindow?
    var webView: WKWebView!

    override func loadView() {
        let webConfiguration = WKWebViewConfiguration()
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view = webView

    }

    override func viewDidLoad() {
        super.viewDidLoad()

        webView.backgroundColor = UIColor.clear
        webView.backgroundColor = UIColor(red: 0.0196, green: 0.4, blue: 0.2902, alpha: 1.0)

        webView.isOpaque = false
        let myURL = URL(string: "https://jwelsh19.wixsite.com/countryday")
        let myRequest = URLRequest(url: myURL!)
        webView.load(myRequest)

    }
}
Run Code Online (Sandbox Code Playgroud)

Raz*_*ick 10

只需在webConfiguration.applicationNameForUserAgent. 尝试使用以下代码。

override func loadView() {
        let webConfiguration = WKWebViewConfiguration()
        webConfiguration.applicationNameForUserAgent = "Version/8.0.2 Safari/600.2.5"
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view = webView
    }
Run Code Online (Sandbox Code Playgroud)

  • 我想,答案必须更新。我也尝试过。它不起作用。 (2认同)