- 浏览: 399194 次
文章分类
- 全部博客 (327)
- Android (114)
- Java (13)
- Java基础 (14)
- Glib (2)
- linux (15)
- extjs (5)
- eclipse (2)
- Asterisk (56)
- MYSQL (6)
- 数据库 (9)
- PHP (7)
- C# (18)
- 杂谈~~ (1)
- web开发前端 (3)
- 网络编程 (2)
- Opensips (2)
- voip (3)
- debian (7)
- openfire (15)
- wordpress (1)
- 版本控制 (1)
- Android 线程服务广播 (1)
- SRTP (2)
- 单片机及ARM等 (3)
- 基础知识 (5)
- asp.net (2)
- 单片机 (1)
- 设计模式及架构 (1)
- 安全 (1)
- Cubieboard 草莓树莓各类派 Android开发板 (1)
- J2EE (2)
- BootStrap (3)
- BootStrap web前端开发 (1)
- web前端开发 (4)
- object-c (1)
- openwrt (8)
- 智能家居 (4)
- Node.js (4)
最新评论
-
xiaoxiecomeon:
你这个程序一存在线程的时间片相互抢占的问题,运行时间长了很可能 ...
Runnable 和 Thread -
dotjar:
我觉得话应该这么说:引用TestThread tt = new ...
Runnable 和 Thread -
dagf113225:
调用TelephonyManager的隐藏API是先参考Fra ...
Android提高第十四篇之探秘TelephonyManager
c# http编程 2010-06-18 11:10 ============================================================ using System; using System.Net; using System.IO; using System.Text; class Test { [STAThread] static void Main(string[] args) { // // TODO: 在此处添加代码以启动应用程序 // string url = "http://localhost/csdn2/1.asp"; // <% // if request("aa")="zhuye" then session("ok")="ok" // if session("ok")="ok" then // response.write("登录") // else // response.write("没有登录") // end if // %> string indata = "aa=zhuye"; string outdata = ""; CookieContainer myCookieContainer = new CookieContainer(); //新建一个CookieContainer来存放Cookie集合 HttpWebRequest myHttpWebRequest = (HttpWebRequest) WebRequest.Create(url); //新建一个HttpWebRequest myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"; myHttpWebRequest.ContentLength = indata.Length; myHttpWebRequest.Method = "POST"; myHttpWebRequest.CookieContainer = myCookieContainer; //设置HttpWebRequest的CookieContainer为刚才建立的那个myCookieContainer Stream myRequestStream = myHttpWebRequest.GetRequestStream(); StreamWriter myStreamWriter = new StreamWriter(myRequestStream, Encoding.GetEncoding("gb2312")); myStreamWriter.Write(indata); //把数据写入HttpWebRequest的Request流 myStreamWriter.Close(); myRequestStream.Close(); //关闭打开对象 HttpWebResponse myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse(); //新建一个HttpWebResponse myHttpWebResponse.Cookies = myCookieContainer.GetCookies(myHttpWebRequest.RequestUri); //获取一个包含url的Cookie集合的CookieCollection Stream myResponseStream = myHttpWebResponse.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("gb2312")); outdata = myStreamReader.ReadToEnd(); //把数据从HttpWebResponse的Response流中读出 myStreamReader.Close(); myResponseStream.Close(); Console.WriteLine(outdata); //显示"登录" //拿到了Cookie,再进行请求就能直接读取到登录后的内容了 myHttpWebRequest = (HttpWebRequest) WebRequest.Create(url); myHttpWebRequest.CookieContainer = myCookieContainer;//* //刚才那个CookieContainer已经存有了Cookie,把它附加到HttpWebRequest中则能直接通过验证 myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse(); myHttpWebResponse.Cookies = myCookieContainer.GetCookies(myHttpWebRequest.RequestUri); myResponseStream = myHttpWebResponse.GetResponseStream(); myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("gb2312")); outdata = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close(); Console.WriteLine(outdata); //再次显示"登录" //如果把*行注释调,就显示"没有登录" } }注释写得很明确了,不多罗嗦了。 补充:如果是以get方式登录的话,直接修改url就可以了,indate可以不写任何东西。(不要去修改 myHttpWebRequest.Method为GET),比如把asp文件修改为 if request.querystring("aa")="zhuye" then session("ok")="ok",只要修改url为 string url="http://localhost/csdn2/1.asp?aa=zhuye";即可。 ============================================================================= 登录校内网的代码 public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string Txt=""; Login(UserName.Text, UserPwd.Text, LoginUrl.Text, out Txt); //获取登录后的页面数据 textBox2.Text = Txt; //判断该页面数据是否是登陆后的数据就可以判断是否登录成功了 //由于都是字符串操作就没有必要写了呵呵 } public void Login(string UserName, string UserPwd, string LoginUrl, out string Txt) { try { //定义Cookie容器 CookieContainer CookieArray = new CookieContainer(); //创建Http请求 HttpWebRequest LoginHttpWebRequest = (HttpWebRequest)WebRequest.Create(LoginUrl); //登录数据 string LoginData = "email=" + UserName + "&password=" + UserPwd; //数据被传输类型 LoginHttpWebRequest.ContentType = "application/x-www-form-urlencoded"; //数据长度 LoginHttpWebRequest.ContentLength = LoginData.Length; //数据传输方法 get或post LoginHttpWebRequest.Method = "POST"; //设置HttpWebRequest的CookieContainer为刚才建立的那个CookieArray LoginHttpWebRequest.CookieContainer = CookieArray; //获取登录数据流 Stream myRequestStream = LoginHttpWebRequest.GetRequestStream(); //StreamWriter StreamWriter myStreamWriter = new StreamWriter(myRequestStream, Encoding.Default); //把数据写入HttpWebRequest的Request流 myStreamWriter.Write(LoginData); //关闭打开对象 myStreamWriter.Close(); myRequestStream.Close(); //新建一个HttpWebResponse HttpWebResponse myHttpWebResponse = (HttpWebResponse)LoginHttpWebRequest.GetResponse(); //获取一个包含url的Cookie集合的CookieCollection myHttpWebResponse.Cookies = CookieArray.GetCookies(LoginHttpWebRequest.RequestUri); WebHeaderCollection a = myHttpWebResponse.Headers; Stream myResponseStream = myHttpWebResponse.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.Default); Txt = myStreamReader.ReadToEnd(); //把数据从HttpWebResponse的Response流中读出 myStreamReader.Close(); myResponseStream.Close(); } catch (Exception ex) { throw ex; } } }
发表评论
-
C# 全局异常处理
2015-10-20 13:36 1067咳,今天给大家带来一个关于C#中的异常处理,很多朋友在C#中 ... -
C#如何判断操作系统位数是32位还是64位
2014-11-07 10:50 1324方法一:对于C#来说,调用WMI是一种简单易行的方式。我们 ... -
UML类图几种关系的总结
2014-11-03 09:34 486在UML类图中,常见的有以下几种关系: 泛化(Genera ... -
Assembly类
2014-10-30 10:25 587System.Reflection.Assembly类是一个 ... -
由云台协议DLL浅谈插件程序的编写(下)
2014-10-28 13:47 419由云台协议DLL浅谈插件程序的编写(下)【原创】 1.创建 ... -
由云台协议DLL浅谈插件程序的编写(上)
2014-10-28 13:47 520前言:本文通过一个简单的工程描述了一种插件设计的思想。复杂设 ... -
平台+插件软件设计基本思想
2014-10-28 13:38 935平台+插件软件设计基 ... -
插件式设计的架构模型与实例
2014-10-28 13:38 320插件式设计近年来非常流行,其中eclipse起了推波助澜的作 ... -
C++插件架构浅谈与初步实现
2014-10-28 13:36 652一、插件架构初步介绍 ... -
什么时候用抽象类,什么时候用接口
2014-09-27 14:18 545共同点是他们都可以实现多态。 不同点在于设计抽象类和接口的目 ... -
使用 Override 和 New 关键字进行版本控制(C# 编程指南)
2014-09-24 14:10 483使用 Override 和 New 关键字进行版本控制(C# ... -
override(C# 参考)
2014-09-24 14:08 359override(C# 参考) Visual Stud ... -
接口可以实例化
2014-09-24 13:53 990接口可以实例化 ... -
C#的WinForm中如何让窗体大小不能改变
2014-08-20 14:20 1072设置FormBorderStyle属性为FixDialog即可 ... -
HOW TO:使用 Visual C# .NET 从文件中读取 XML
2012-03-06 20:52 1178本文描述如何使用 XmlTe ... -
C#XML操作
2012-03-06 20:52 769using System.Xml; namespace ... -
Visual C# HTTP协议开发
2012-03-06 20:53 1001Visual C# HTTP协议开发 HTTP协议简 ...
相关推荐
C#网络编程---第1章_进程、线程与网络协议.ppt C#网络编程---第2章_TCP应用编程.ppt C#网络编程---第3章_UDP应用编程.ppt ...C#网络编程---第9章_HTTP编程.ppt C#网络编程---第10章_Web_Service_编程.ppt
《C#网络编程高级篇之网页游戏辅助程序设计》涉及的领域包括多线程编程技术、Socket套接字编程、TCP协议编程、HTTP协议编程、远程控制技术、木马技术、模拟键盘和鼠标技术、网页游戏辅助程序设计技术等。
C#网络编程技术教程,包含各种C# ftp webservice http socket
c#网络编程包括tcp,ftp,http的编程.
c#网络编程Demo 里面包含很多关于网络编程的Demo 如局域网聊天,p2p,ftp,http,tcp,udp等等。值得下载。
主要介绍了深入学习C#网络编程之HTTP应用编程的相关知识,文中讲解的非常详细,帮助大家更好的学习c#网络编程,感兴趣的朋友可以了解下
第1章 C#.NET网络编程概述 第2章 C#.NET高级网络编程技术概述 第3章 开发基于TCP协议的应用程序 第4章 开发基于UDP的应用程序 第5章 开发基于SNMP协议的应用程序 第6章 使用.NET发送邮件 第7章 FTP下载与...
电子书下载 : http://blog.csdn.net/good3651/article/details/53420721 ------- 《游戏开发经典丛书:精通C#游戏编程》通过引导读者创建一个基本的游戏,展示了如何使用C#和OpenGL一步步地开发出简单、整洁而可靠...
《c#精彩编程百例》配套源码 附录:本书配套光盘说明 本光盘包括本书所有源代码及其可执行文件、配套的C#编辑器(包括编辑器的C#源代码)及一些参考资料。 一、安装程序 将此光盘放到CD-ROM驱动器,运行Setup.htm...
《C# 实用编程百例》配套光盘使用指南 在本书配套光盘中可以找到与书中实例相应的文件。文件先按章组成, 共分成6章。每章的文件夹中包含了该章的实例源文件。 使用本书配套光盘时需要注意以下几点: ·本书...
R语言和C#混合编程技术 利用http://rcom.univie.ac.at/提供的组件 有免费版和商业版
·下载.NET Framework 1.1 Software Development Kit的官方网址为: http://www.microsoft.com/downloads/details.aspx?FamilyId=9B3A2CA6-3647-4070-9F41-A333·对于第4章数据库编程中的实例,除了Framework以外,...
C# 校际编程大赛第一名作品-(蓝色口袋) 包含内容:仿QQ界面,MD5破解,手写板,软件的注册,界面抖动,全局钩子,系统快截键等等! 官方主页:http://www.8han.com 制作:梦想接口编程组 QQ讨论群:72470753
详情请浏览:http://blog.csdn.net/ruixing123/archive/2009/06/17/4276870.aspx
C# Socket编程入门实例,配合博文使用http://blog.csdn.net/mevicky/article/details/49000019
c#的tcp/ip编程,可参见博客http://blog.csdn.net/specialshoot/article/details/51379076
C# 编程指南 [微软官方 MSDN 节选] MSDN Library for Visual Studio 2008 - Visual C# - C# 编程指南 制作成了chm格式,方便离线状态下学习! ======================================= 原文地址:...
马骏 C#网络应用编程基础-电子教案及课后习题