我有一个应用程序,它会将您登录到一个网站,然后从该网站下载一些文件。
虽然,我已经能够下载所有类型的文件并正确保存,除了其链接重定向到另一个页面。
对于ex,如果在网页的源代码中,链接地址写为: -
“http://someurl.com/view.php”,然后此链接重定向并立即开始下载(当我们点击网络brwoser中的链接时)。
我已经能够使用HttpWebRequest
以编程方式下载此文件
然后设置AllowAutoRedirect = true
。
保存时出现问题,我需要对下载的文件进行扩展(无论是word文档,pdf文件还是其他文件)
我该如何检查?
我使用的一些代码是: -
HttpWebRequest request = WebRequest.Create(UriObj) as HttpWebRequest;
request.Proxy = null;
request.CookieContainer = CC;
request.AllowAutoRedirect = true ;
request.ContentType = "application/x-www-form-urlencoded";
答案 0 :(得分:2)
当您获得重定向的响应时,ResponseUri属性将为您提供实际响应的资源的URI。
因此,如果http://someurl.com/view.php
重定向到http://example.com/foo.doc
,则ResponseUri
将包含http://example.com/foo.doc
。
了解“扩展”可能不是您所期望的。例如,我看到像http://example.com/document.php
这样的网址会返回一个PDF文件。我见过带有“.mp3”扩展名的网址返回图像文件等。
您可以查看ContentType标题,这通常是对响应实际内容的更可靠指标,但不是保证。