如何编写包含Windows Live ID的HttpRequest?

时间:2011-05-02 21:27:19

标签: c# .net

我正在尝试编写一个小工具,让我发送 http 请求和响应,因为我在 .NET framework 中了解了有关网络功能的更多信息。

但是,在处理需要 Windows Live ID 身份验证的页面时,我无法弄清楚如何编写包含我的身份验证信息的请求,以便我可以检索该页面的 HTML 的。我最终得到 HTML ,其中包含 Windows Live ID 用户名密码条目。

有人可以向我展示如何在 C#中编写HttpRequest的示例,以便让我使用 Windows Live ID 的网站进行身份验证吗?

谢谢,

-Craig

1 个答案:

答案 0 :(得分:0)

我相信您首先需要加载登录页面,然后模拟表单提交(通过POST或GET,无论它在做什么),然后存储返回的cookie值,以便您可以发送每个请求。

以这种方式思考 - 当您尝试拉出所需的页面时,它来自不同的客户端(为简单起见,请考虑浏览器)。您的程序不是Internet Explorer,Firefox或Chrome ......它是自己的新浏览器。如果您在Internet Explorer中登录Windows LIVE,然后转到Firefox中的同一页面,它会让您再次登录,对吧?

嗯,网站知道你是谁的唯一方法就是它放在你的机器上的cookie,以及那些特定于浏览器的。

因此,由于您实际上是在创建一个新的浏览器,因此您必须存储已创建的cookie(将您链接到有效的登录会话)并在每个请求中发送这些cookie。