0

我正在UIWebView使用loadHTMLString方法加载一些 HTML 字符串。

[self.myWebView loadHTMLString:html baseURL:baseURL];

HTML 字符串如下所示。

<html>
    <head></head>
    <body>
        <!-- [DocumentBodyStart:9ab3216e-b945-4432-141f-68164c25f0d6] -->
        <div class="jive-rendered-content"> 
            <p class="">Test description</p> 
            <a href="https://a-team-906-test.jivelandia.com/servlet/JiveServlet/previewBody/1091-102-1-1054/IMG_0005.JPG">
                <img src="https://a-team-906-test.jivelandia.com/servlet/JiveServlet/previewBody/1091-102-1-1054/IMG_0005.JPG">
            </a>
        </div>
        <!-- [DocumentBodyEnd:9ab3216e-b945-4432-141f-68164c25f0d6] -->
        <script type="text/javascript" src="web/video-loading-events.js" onerror="alert('cant load video-loading-events.js')"></script>
    </body><br>
</html>

如您所见,HTML 内容中有一个 Image URL。问题是由于身份验证问题,图像无法在 WebView 上加载。

那么我如何拦截该图像 url 请求以查看引擎盖下发生了什么?如果有必要,我如何才能仅添加具有该特定请求的附加标头?

Objective-C 更可取,但也欢迎使用 Swift。提前致谢。

4

1 回答 1

1

一个好的起点是使用 safari web 检查器查看当您在应用程序中打开 web 视图时哪些错误被注销到控制台。

您需要从 iPhone 启用 Web 检查器,然后确保在 safari 中启用了“在菜单栏中显示开发菜单”。

完成这两项后,您可以Develop -> <Your device or simulator> -> <your webview>在 safari 中导航到。

从开发人员窗口刷新页面并查看注销的内容。

祝你好运!

于 2018-07-03T05:51:01.817 回答