C# 使用 HttpClient WP 浏览网站

本文关键字:浏览 网站 WP HttpClient 使用 | 更新日期: 2023-09-27 18:36:56

一直在寻找解决方案,但我无法得到回答我问题的结果。

我正在寻找一种使用HttpClient浏览网站(基本上阅读html)的方法。我正在为Windows Phone制作一个应用程序,因此某些选项可能被禁用。

我想制作一个程序,该程序转到站点,登录,然后能够检索访问html源代码。

因此,当我登录时,会话 ID 保存在 Cookie容器中,因此我将能够访问需要登录的站点。如何使用 HttpClient :)执行此操作?

C# 使用 HttpClient WP 浏览网站

HttpClient 会自动为您管理身份验证 Cookie。 只需确保对多个请求重复使用同一个 HttpClient 实例即可。在幕后,HttpClient创建了一个具有CookieContainer的HttpClientHandler实例。

下面是一个登录到NerdDinner站点并检索安全页面的示例。

        var httpClient = new HttpClient();
        // Create login payload
        var body = new Dictionary<string, string>() 
        {
            {"UserName",  "bob"},
            {"Password", "xyz"},
            {"RememberMe", "false"}
        };
        var content = new FormUrlEncodedContent(body);
        // POST to login form
        var response = await httpClient.PostAsync("http://www.nerddinner.com/Account/LogOn?returnUrl=%2F", content);
        // Make new request to secured resource
        var myresponse = await httpClient.GetAsync("http://www.nerddinner.com/Dinners/My");
        var stringContent = await myresponse.Content.ReadAsStringAsync();