ios - 在 WKWebview 中的 url 请求上返回空内容
问题描述
我想为请求特定 url 的页面部分返回一个空内容。
我在Android中做了同样的事情。当请求特定 url 时,这将返回空内容。我想在 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 委托函数。但是这个函数不返回一个webresource,所以我这里不能返回一个空的html。
下面是示例代码。
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
if let host = navigationAction.request.url?.host {
decisionHandler(.allow)
return
}
decisionHandler(.cancel)
}
任何帮助表示赞赏。
谢谢。
解决方案
推荐阅读
- c - 使用不在 System32 中的 DLL
- ios - Swift - 如何过滤多维数组
- python - 是否可以通过 QML 从 PySide2 插槽(服务调用)获取对象列表?
- opengl - 了解这个 YUV 到 RGB 转换的着色器
- bash - 在显示实时输出的函数中执行命令
- android - Firestore 多次写入同一个文档并停止工作一段时间
- python - 如何正确使用 pitch_shift (librosa)?
- java - 我如何从 Spring Security 抛出自定义响应
- azure-devops - 在 Linux 代理上读取 JSON 文件并将其部署在 DCOS 上
- google-app-engine - 由于付费应用的配额,AppEngine blobstore.CreateUploadURL 调用失败