当前位置: 首页 > 面试题库 >

WkWebView不会加载指向pdf的链接

丌官向荣
2023-03-14
问题内容

WKWebView没有加载链接。我将用户链接到隐私策略页面,并且该页面具有一组链接。链接都是wix托管的所有pdf文件。在safari和Chrome上可以使用,但不能在WKWebView上使用。页面加载后,单击链接,我得到一个错误:

Unknown result for URL 0x28157d110 (https)

这就是我加载网络视图的方式…

webView.load(URLRequest(url: URL(string: "https://mywebsite.io/legal")!))

编辑:这与其他问题不同,因为我无意下载pdf-我只想以与Safari相同的方式显示它。

编辑:我只是用UIWebView替换了WKWebView(不建议使用)和pdfs加载。问题在于WKWebView。Pdfs已启用ssl https->

let req = URLRequest(url: URL(string: "https://mywebsite.io/legal")!)
    legacyWebView.loadRequest(req)

编辑:这里有一个页面,如何使用wkwebview打开到PDF的链接,建议您在打开pdf之前必须知道链接URL,但是我认为这不是真的。

编辑:我实现了2个委托方法,包括下面@Kiril建议的方法。pdf链接仍然无法打开。

func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
        decisionHandler(WKNavigationActionPolicy.allow)
    }
    func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -> Void) {
        decisionHandler(WKNavigationResponsePolicy.allow)
    }

问题答案:

您可以检查以下几件事:

  1. 验证<a href链接是否不包含target="_blank"属性,因为WKWebView不知道如何在新选项卡中打开链接。

  2. 检查链接是否为HTTPS或App Transport Security Settings使用Allow Arbitrary Loads选项更新

  3. 确保仅在将WKWebView添加到视图层次结构之后才启动加载请求,didMoveToParentViewController:因为如果它试图在视图层次结构之外运行,可能会使javascript失败

  4. 实现WKWebView NavigationDelegate方法,并确保WKNavigationActionPolicyAllow在确定请求策略时返回



 类似资料:
  • 我正在用WKWebView制作一个iOS Webview应用程序。而且我的应用有自己的主题颜色(灰色)。所以我的启动屏幕和网站的背景都是灰色的。但有一个问题。 我的应用程序屏幕颜色在launchscreen结束和webview加载之间变为白色。 Q1.有没有一种解决方案可以在webview加载时保持启动屏幕? Q2.或者有没有一种解决方案可以将WkWebview加载背景色改为白色为灰色?

  • 有什么想法如何添加一个超链接在一个网页上使用这个库? 我发现了这个问题:如何使用pdfbox在内容中设置超链接,但这不起作用。 我只想在pdf文件的第一页添加一个超链接。 我更喜欢在页面底部添加以URL为中心的超链接。但目前任何建议都有帮助

  • 问题内容: 我尝试在WKWebView上使用javascript加载本地HTML游戏。尽管我可以看到CSS样式的HTML页面,但是我听不到游戏的声音,并且某些游戏的动作不对应。 我注意到,如果我通过http live服务器加载完全相同的游戏,那么一切似乎都很完美。因此,我认为本地负载出了点问题。也许这一个Apache的问题可能是这个问题? Info.plist: 我的代码 (SWIFT 3) :

  • 我有一些短信是这样的: Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eusmod tempor incidunt ut labore et dolore magna aliqua.iTunes.apples.ru.com/app/forge-of-empires/id711455226 ipsum dolor sit

  • 在下面的双向链表示例中,我可以将节点添加到双向链表的前面和双向链表的末尾。我还可以向前遍历双向链表并成功打印节点的值。当我向后打印列表时,我的tail.previous值为空,我只能打印当前在尾部的节点值。请告诉我出了什么问题。谢谢。 测试代码如下:公共类DDLTest{

  • 问题内容: 我有一个函数,可以在链接之前和之后添加标签。但是,某些网页会中断。您将如何改善此功能?谢谢! 问题答案: