用户登录模拟浏览器访问数据库的新形式--HttpWebRequest 访问数据库
2012-12-14 15:53
666 查看
在一般的系统中,用户登录大部分都是简单的获取用户名和密码,然后到数据库查询。但是一两个系统的话,可以去访问数据库,然后来获取测试结果。如果是五个,六个系统,甚至更多的系统,都需要建立自己的用户表,而用户可能是一样的。这样的情况下,可能造成一部分的设计麻烦或者代码冗余。但是如果换种方式,有一个标准的数据库,它里面的用户是最最标准的,这个数据库提供给其它系统一个webService,当其它用户登录的时候,系统只需要去访问一个地址,然后传入用户名和密码,静等返回结果。这样的处理,是不是大大的提高了访问效率,也分了层,提高了代码的可维护性。
你可以把你的代码考虑为一个简单的浏览器,然后通过浏览器去登录系统,具体登录成功还是失败,就看系统的返回结果了。具体怎么实现呢?看下面的这个方法
View Code
具体应用中,用到了一些HTTP的知识。真正用起来后会感觉真的方便很多。
你可以把你的代码考虑为一个简单的浏览器,然后通过浏览器去登录系统,具体登录成功还是失败,就看系统的返回结果了。具体怎么实现呢?看下面的这个方法
View Code
/// <summary> /// HTTP Request登录请求 /// </summary> /// <param name="param">可以为空</param> /// <param name="username">用户名(社员号)</param> /// <param name="password">密码</param> /// <returns></returns> public string SendRequest(string param, string username, string password) { try { string url = "http://192.168.1.221/LoginValidateSystem/LoginIndex.aspx?EmployeeCD1=" + "" + username + "&EmployeePassword1=" + password + "";//请求的链接地址 ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(param); //将参数转换为字节数组 HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Method = "POST";//请求方式 request.ContentType = "application/x-www-form-urlencoded";//请求连接的类型 request.ContentLength = data.Length; //请求参数的长度 Stream sm = request.GetRequestStream(); //以数据流的形式传递参数 sm.Write(data, 0, data.Length); sm.Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); if (response.StatusCode.ToString() != "OK") { return ""; } StreamReader myreader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); //以数据流的形式获取response响应的数据 string responseText = myreader.ReadToEnd(); return responseText; } catch (Exception) { throw; } }
具体应用中,用到了一些HTTP的知识。真正用起来后会感觉真的方便很多。
相关文章推荐
- C#使用HttpWebRequest与HttpWebResponse模拟用户登录
- 使用HttpWebRequest和HttpWebResponse实现模拟登录需要登陆后才可以访问的页面
- C#使用HttpWebRequest与HttpWebResponse模拟用户登录
- 【JavaWeb】XML文件_使用xml文件作为数据库并且使用xpath技术模拟用户登录
- [转发]HttpWebRequest模拟登陆,存储Cookie以便登录请求后使用
- HttpWebRequest模拟登陆,存储Cookie以便登录请求后使用
- 【.Net基础03】HttpWebRequest模拟浏览器登陆
- httpwebrequest 模拟登录 获取cookies 以前的代码,记录备忘!
- httpwebrequest 模拟登录 获取cookies 以前的代码,记录备忘!
- C# HttpWebRequest保存cookies模拟登录的方法
- C# 利用 HttpWebRequest 和 HttpWebResponse 模拟登录有验证码的网站
- C# 利用 HttpWebRequest 和 HttpWebResponse 模拟登录有验证码的网站
- 利用HttpWebRequest和HttpWebResponse获取Cookie并实现模拟登录
- 使用HttpWebRequest访问需要登录的网站-另一种途径
- C#如何HttpWebRequest模拟登陆,获取服务端返回Cookie以便登录请求后使用
- HttpWebRequest模拟c#网站登录
- C# HttpWebRequest保存cookies模拟登录的方法【z】【解决】
- HttpWebRequest模拟浏览器的GET、POST请求
- HttpWebRequest模拟登陆,存储Cookie以便登录请求后使用
- python 利用浏览器 Cookie 模拟登录的用户访问知乎