2

我正在尝试构建一个 C# 控制台应用程序来自动从我们的网站获取某些文件,主要是为了节省我自己的点击次数,坦率地说,只是为了完成它。但是我遇到了一个我无法找到有效解决方案的障碍。

我正在尝试连接的网站使用 ASP.Net 表单授权,我无法弄清楚如何使用它来验证自己的身份。这个应用程序是一个完整的黑客,所以我可以硬编码我的用户名和密码或任何其他需要的身份验证信息,并且解决方案本身不需要是足够可行的东西来发布给一般用户。换句话说,如果唯一可能的解决方案是 hack,我可以接受。

基本上,我正在尝试使用 HttpWebRequest 来拉取具有文件列表的站点,遍历该列表,然后下载我需要的内容。因此,一旦我可以让网站认为我获得授权,该网站上的实际工作就相当简单了。

4

2 回答 2

2

这个页面应该让你开始。您需要首先向页面发出请求,然后将 cookie 保存到您包含在所有后续请求中的容器中。这应该让您保持登录状态,并能够检索文件。

于 2008-08-22T13:05:04.553 回答
2

我处理过类似的事情,最难的部分是弄清楚你需要什么来“伪造”以获得授权。在我的情况下,它是授权进入一些 Lotus Notes web 服务,但细节并不重要,方法是一样的。

本质上,我们需要记录一个常规的用户会话。我会推荐 Fiddler http://www.fiddler2.com 但如果你使用的是 linux 或其他东西,那么你需要使用 wireshark 来解决一些问题。不确定是否有可以使用的 firefox 插件。

无论如何,启动IE,然后启动Fiddler。完成登录过程。
停止你正在做的事情。切换到提琴手窗格,并详细检查记录的会话。它应该为您提供使用 WebRequests 伪造所需的确切信息。

于 2008-08-22T13:09:40.253 回答