如何使用C#实现asp.net网站的自动登录?

简介:

HttpWebRequest 发送 POST 请求到一个网页服务器实现自动用户登录

假如某个页面有个如下的表单(Form):
<form name="form1" action="http:www.breakn.com/login.asp" method="post">   
<input type="text" name="userid" value="">   
<input type="password" name="password" value="">   
</form>  
从表单可看到表单有两个表单域,一个是userid另一个是password,所以以POST形式提交的数据应该包含有这两项。
其中POST的数据格式为:
表单域名称1=值1&表单域名称2=值2&表单域名称3=值3……
要注意的是“值”必须是经过HTMLEncode的,即不能包含“<>=&”这些符号。

本例子要提交的数据应该是:
userid=value1&password=value2
string strId = "guest";   
string strPassword= "123456";   
  
ASCIIEncoding encoding=new ASCIIEncoding();   
string postData="userid="+strId;   
postData += ("&password="+strPassword);   
  
byte[] data = encoding.GetBytes(postData);   
  
// Prepare web request...   
HttpWebRequest myRequest =   
(HttpWebRequest)WebRequest.Create("http:www.here.com/login.asp");   
  
myRequest.Method = "POST";   
myRequest.ContentType="application/x-www-form-urlencoded";   
myRequest.ContentLength = data.Length;   
Stream newStream=myRequest.GetRequestStream();   
  
// Send the data.   
newStream.Write(data,0,data.Length);   
newStream.Close();   
  
// Get response   
HttpWebResponse myResponse=(HttpWebResponse)myRequest.GetResponse();   
StreamReader reader = new StreamReader(response.GetResponseStream(),Encoding.Default);   
string content = reader.ReadToEnd();   
Console.WriteLine(content);   




本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/articles/1532594.html,如需转载请自行联系原作者


相关文章
|
24天前
|
数据采集 JavaScript C#
C#图像爬虫实战:从Walmart网站下载图片
C#图像爬虫实战:从Walmart网站下载图片
|
2月前
|
C# 开发者 Windows
在VB.NET项目中使用C#编写的代码
在VB.NET项目中使用C#编写的代码
45 0
|
2天前
|
开发框架 .NET C#
C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式
【10月更文挑战第9天】在 C#/.NET Core 中,有多种方法可以删除字符串的最后一个字符,包括使用 `Substring` 方法、`Remove` 方法、`ToCharArray` 与 `Array.Copy`、`StringBuilder`、正则表达式、循环遍历字符数组以及使用 LINQ 的 `SkipLast` 方法。
|
3天前
|
SQL JSON BI
最好的 C# .NET 报告工具
最好的 C# .NET 报告工具
7 0
|
1月前
|
SQL 存储 关系型数据库
C#一分钟浅谈:使用 ADO.NET 进行数据库访问
【9月更文挑战第3天】在.NET开发中,与数据库交互至关重要。ADO.NET是Microsoft提供的用于访问关系型数据库的类库,包含连接数据库、执行SQL命令等功能。本文从基础入手,介绍如何使用ADO.NET进行数据库访问,并提供示例代码,同时讨论常见问题及其解决方案,如连接字符串错误、SQL注入风险和资源泄露等,帮助开发者更好地利用ADO.NET提升应用的安全性和稳定性。
85 6
|
1月前
|
算法 Java 中间件
C#/.NET/.NET Core优质学习资料,干货收藏!
C#/.NET/.NET Core优质学习资料,干货收藏!
|
1月前
|
人工智能 开发框架 算法
C#/.NET/.NET Core技术前沿周刊 | 第 2 期(2024年8.19-8.25)
C#/.NET/.NET Core技术前沿周刊 | 第 2 期(2024年8.19-8.25)
|
1月前
|
缓存 开发框架 算法
C#/.NET这些实用的编程技巧你都会了吗?
C#/.NET这些实用的编程技巧你都会了吗?
|
1月前
|
传感器 应用服务中间件 Linux
C#/.NET/.NET Core技术前沿周刊 | 第 3 期(2024年8.26-8.31)
C#/.NET/.NET Core技术前沿周刊 | 第 3 期(2024年8.26-8.31)