0

我做了一个登录按钮,想检查用户是否登录。我虽然有两种方法可以做到这一点。

  1. 检查浏览器 url 是否与 url 相等(如果用户登录成功,则 url 为 url1,否则 url 为 url2)
  2. 检查当前浏览器内容是否包含单词(例如,如果用户登录成功,则在重定向页面中应该有“谢谢”消息)

我想提一下,一切正常,我唯一的问题是检查他是否登录

public void Login()
{
    webBrowser1.Document.GetElementById("username").SetAttribute("value", txtUsername.Text);
    webBrowser1.Document.GetElementById("password").SetAttribute("value", txtPassword.Text);
    foreach (HtmlElement item in webBrowser1.Document.GetElementsByTagName("input"))
    {
        if (item.OuterHtml.Contains("input_submit"))
        {
            item.InvokeMember("Click");
            break; // Here the webbrowser redirect right?
        }
    }
    if (webBrowser1.Document.Body.InnerText.Contains("Thank you"))
        con = true;
    else
        con = false;
}
4

1 回答 1

1

我建议你使用HttpRequest 来模拟登录进度,使用HttpResponse来获取网络服务器响应和内容,并使用全局CookieContainer来存储 cookie。

当您收到登录成功消息时,您可以使用其他带有 globval CookieContainer 的 HttpRequest 来获取您想要下载或访问的任何网页。

我希望这可以帮助你。

您可以使用 Httpwatch(www.httpwatch.com) 观看 Internet Explorer 如何与 WebServer 交换数据。您也可以使用 IE9 开发工具来执行此操作(在 IE9 中按 F12)。

于 2012-06-28T19:29:49.143 回答