我有一个需要从需要登录的站点下载的文件列表。除非设置了相应的HttpRequestHeader.Cookie,否则该文件将不会下载。获取HTTP请求标题VB.Net/Telerik测试框架
如果我手动登录到网站并通过fiddler提取标题并将它们传递到Cookie插槽,则会下载文件。我想要做的是导航到该网站(使用Telerik测试框架),登录,阅读我需要下载的URL,然后调用WebClient.DownloadFile。
我试图通过Telerik下载文件,但在将作业部署到Windows Server上时遇到了问题。
经过大量的谷歌搜索之后,我仍然无法弄清楚在导航到我收集URL的页面后,如何通过Telerik拖动HttpRequestHeaders - 这些应该是我需要传入WebClient的正确值下载文件。
有人可以指出我正确的方向或提供替代?
在此先感谢。
Using client
client.Credentials = New NetworkCredential("user", "pass")
client.Headers.Add(System.Net.HttpRequestHeader.Accept, "*/*")
client.Headers.Add(System.Net.HttpRequestHeader.AcceptEncoding, "gzip, deflate")
client.Headers.Add(System.Net.HttpRequestHeader.AcceptLanguage, "en-US")
client.Headers.Add(System.Net.HttpRequestHeader.UserAgent, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E)")
client.Headers.Add(System.Net.HttpRequestHeader.Cookie, "WLP-COOKIE1=r1593517685; JSESSIONID=Sz6G1lpvwhGB6FmqN6ySPbtf2cK2fs09hTtsX2sqcSwtLL7rKzpy!-1832769242; iPlanetDirectoryPro=AQIC5wM2LY4SfczHcm5%2FeHFKpWlxpQ71jtwzwJ75uHryjzA%3D%40AAJTSQACMTAAAlMxAAIwMQ%3D%3D%23; MMISPRODPOSCsource=AQIC5wM2LY4SfczHcm5%2FeHFKpWlxpQ71jtwzwJ75uHryjzA%3D%40AAJTSQACMTAAAlMxAAIwMQ%3D%3D%23")
client.Headers.Add(System.Net.HttpRequestHeader.Referer, "https://mysite.com")
client.DownloadFile(url, file)
End Using
+1的响应,我发现通过Telerik的测试框架一个更简单的方法,但欣赏的答案。 – maxedev