diff --git a/ReCaptcha/Classes/ReCaptcha.swift b/ReCaptcha/Classes/ReCaptcha.swift index 5fadf88..27ccaef 100644 --- a/ReCaptcha/Classes/ReCaptcha.swift +++ b/ReCaptcha/Classes/ReCaptcha.swift @@ -33,7 +33,7 @@ open class ReCaptcha: ReCaptchaWebViewManager { fileprivate var url: String { switch self { case .default: return "https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" - case .alternate: return "https://www.recaptcha.net/recaptcha/api.js" + case .alternate: return "https://www.recaptcha.net/recaptcha/api.js?onload=onloadCallback&render=explicit" } } } diff --git a/ReCaptcha/Classes/ReCaptchaWebViewManager.swift b/ReCaptcha/Classes/ReCaptchaWebViewManager.swift index 6959c3e..2db6091 100644 --- a/ReCaptcha/Classes/ReCaptchaWebViewManager.swift +++ b/ReCaptcha/Classes/ReCaptchaWebViewManager.swift @@ -19,6 +19,11 @@ open class ReCaptchaWebViewManager { /** The `webView` delegate object that performs execution uppon script loading */ fileprivate class WebViewDelegate: NSObject, WKNavigationDelegate { + struct Constants { + /// The host that loaded requests should have + static let apiURLHost = "www.google.com" + } + /// The parent manager private weak var manager: ReCaptchaWebViewManager? @@ -46,8 +51,7 @@ open class ReCaptchaWebViewManager { ) -> Void) { defer { decisionHandler(.allow) } - if let url = navigationAction.request.url, let host = url.host, let endpoint = manager?.endpoint, - endpoint.range(of: host) != nil { + if let url = navigationAction.request.url, url.host == Constants.apiURLHost { activeRequests.insert(url.absoluteString) } }