我需要构建一个 Windows 窗体应用程序来测量完全加载网页所需的时间,最好的方法是什么?
这个小应用程序的目的是按照预定的时间间隔监视网站中的某些页面,以便能够事先知道网络服务器或数据库服务器是否出现问题。
附加信息:
我无法使用商业应用程序,我需要开发它以便能够将结果保存到数据库并根据此信息创建一系列报告。
webrequest 解决方案似乎是我要使用的方法,但是,如果能够测量完全加载页面(图像、css、javascript 等)所需的时间,那就太好了。知道如何做到这一点吗?
如果您只想记录获取基本页面源代码需要多长时间,您可以将 HttpWebRequest 包装在秒表上。例如。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
System.Diagnostics.Stopwatch timer = new Stopwatch();
timer.Start();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
timer.Stop();
TimeSpan timeTaken = timer.Elapsed;
但是,这不会考虑下载图像等额外内容的时间。
[编辑] 作为替代方案,您可以使用 WebBrowser 控件并测量执行 .Navigate() 和触发 DocumentCompleted 事件之间的时间。我认为这还将包括额外内容的下载和渲染时间。但是,我没有大量使用 WebBrowser 控件,只是不知道如果重复请求同一页面是否需要清除缓存。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)