我正在尝试基于WPF Web浏览器控件创建自定义Web浏览器.我已经实现了IWebBrowser2 com接口,并实施了处理程序Navigating(),NavigatedTo()和LoadCompleted()事件.但是这些事件回调只针对顶级页面触发一次.现在假设一个页面中有一些java脚本,css和图像文件; 浏览器发出单独的HTTP请求以下载这些文件.我们想捕获单个HTTP请求事件.例如,如果HTML页面的结构是
<html>
<body>
<img src="img1.bmp"/>
<imp src="img2.bmp"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我想捕获img1.bmp和img2.bmp的单独下载时间.有人可以建议一种方法来实现这一目标吗?
同时我发现DWebBrowserEvents_Event对于这些图像请求等已经触发了downloadbegin()事件,但我无法获取它正在下载的URL,因为处理程序将void作为参数.
那么有什么方法可以获得相应的URL,因为有一个事件是downloadComplete,当下载完成时会被触发.所以我可以通过这种方式实现这一目标.
但我必须解决上面的图像渲染时间.我被困住了.请帮我....
我最近在与某家公司的访谈中遇到了这个面试问题.我试图使用maxHeap并试图解决它,但是他不能接受,因为问题陈述要求我在恒定的时间和恒定的空间内解决我.
因此,我认为有一些与魔法有关的东西,我想到了布隆过滤器,但正如我们在布隆过滤器中所知,我们可以简单地检查是否已经访问过特定的IP,它也可以返回误报.
任何人都可以帮我解决这个问题.面试结束了,但我仍然想了解如何特别对待IP,以便解决方案在时间和空间上都是O(c).