C#博客随笔之四:使用C#模拟办公网登录HttpClient的使用

今天我们要做的是使用C#开发一个桌面的应用,这个应用可以登录办公网,并取的个人信息

用到的东西主要有HttpClinet 和 正则表达式

直接上图了昂,么么么

分别是程序的界面,输入正确的账号密码和输入错误的账号密码的界面

下面放上的神奇的代码

private void button1_Click(object sender, EventArgs e)
        {
            HttpClient client = new HttpClient();
            var login = client.GetStringAsync("http://e.tju.edu.cn/Main/logon.do?uid="+username.Text+"&password="+password.Text).Result;
            string reg = "当前用户:([^<]*)&nbs";
            Regex r = new Regex(reg);
            MatchCollection res = r.Matches(login);
            if (res.Count == 0)
            {
                MessageBox.Show("登陆失败");
            }
            else
            {
                MessageBox.Show(res[0].Groups[1].ToString().Replace(" ","")+"登陆成功");
            }
        }

首先我们将httpclient 实例化,好帅啊

然后调用getstringasync 方法来尽情get请求,这里没有使用post方法,是因为发现办公网其实能够接受post和get两种方法的提交,get方法更简单一些,直接拼接url即可,这个在计算机网络课上也提到过哦。

然后是使用正则表达式来匹配

当前用户:([^<]*)&nbs
这段内容的意思是,匹配出所有 当前用户 和&nbs之间所有的内容
然后对出去来的结果进行判断,如果没有内容,就判断为登录失败,否则将内容格式化输出出来

这次的东西也比较简单,但是在很多地方是可以用到的。哈哈啊哈哈还是很高大的呦。

活学活用,have fun。

么么么么哒

原文地址:https://www.cnblogs.com/MelodyWang/p/4392597.html