0

我经常使用一个网站,所以我正在创建一个工具来帮助我使用它并轻松地从中检索数据。我处理的网站是使用 JSP 构建的。

我正在构建的工具将使用 C# 下的 WPF 完成。所以我需要做(但不知道如何)是连接到网站(HttpWebRequest 或类似的东西),登录(用户名和密码以及其他一些参数通过 POST 方法发送)以及请求标头信息,如推荐人等等...

我希望有人指导我如何创建一个连接到网站的应用程序,登录然后导航到两个或三个不同的页面,然后检索一个文件或只是复制 HTML 代码,其余的我会处理。

提前致谢 ...

4

2 回答 2

1

从我们在评论中对您的问题的小讨论中,我将您的问题解释为与从 .NET 中进行 Web 请求时如何设置身份验证和 http 动词有关,而不是与安全性相关的问题。对不起,如果我误解了你。

你提到HttpWebRequest这也是我要开始的地方。

您在以下位置使用静态Create方法创建实例WebRequest

    var request = (HttpWebRequest)WebRequest.Create('https://some.url');

然后,您可以使用任一分配标题

    request.Headers[HttpRequestHeader.Authorization] = 'your auth token';

某些值(如 Date 标头)无法使用上述方法设置,因为它具有专用属性。请参阅 msdn 上的HttpWebRequest 描述

要更改动词/方法,您可以简单地使用Methodstring 属性。

使用GetRequestBody“GetResponseBody Stream”来编写请求和读取响应正文methods. They return respectively a write-only/read-only。这些也存在于异步样式变体中,如果您正在执行多页面加载,这是首选。

于 2012-05-10T20:41:14.367 回答
1

我想你基本上回答了你自己的问题。使用 C# 中的 Web 连接库,登录并使用 GetResponse() 提取 HTML 文本。

于 2012-05-10T06:19:55.773 回答