WKWebView中的Google disallowed_useragent

时间:2018-11-03 21:07:54

标签: ios swift xcode google-oauth wkwebview

我正在尝试将WebView用于应用程序中的页面,但是尝试登录google时出现错误。 enter image description here我知道google需要使用已知的OS浏览器来登录其服务,但是可以通过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)

    }
}

1 个答案:

答案 0 :(得分:2)

只需在webConfiguration.applicationNameForUserAgent中设置您的移动Safari代理的正确值。尝试使用以下代码。

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
    }