在WKWebview中的url请求上返回空内容

时间:2018-11-30 00:13:03

标签: ios swift wkwebview

我想为页面中请求特定网址的部分返回空内容。

我在Android中也这样做过。请求特定的网址时,这将返回空内容。我想在iOS WKWebView中执行相同的操作。 我正在尝试用Swift 4编写。

     mWebView.setWebViewClient(new WebViewClient() {

        private Map<String, Boolean> loadedUrls = new HashMap<>();

        @TargetApi(Build.VERSION_CODES.HONEYCOMB)
        @Override
        public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
            return Utils.createEmptyResource();
        }

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
        }

        @Override
        public void onPageFinished(WebView view, String url) {
        }
    });

    @TargetApi(Build.VERSION_CODES.HONEYCOMB)
    public static WebResourceResponse createEmptyResource() {
        return new WebResourceResponse("text/plain", "utf-8", new ByteArrayInputStream("".getBytes()));
    }

这是我用于此类功能的WKWebkit委托函数。但是此函数不会返回网络资源,因此我将无法在此处返回空的html。

下面是示例代码。

func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
        if let host = navigationAction.request.url?.host {
            decisionHandler(.allow)
            return
        }
        decisionHandler(.cancel)
    }

感谢您的帮助。

谢谢。

0 个答案:

没有答案