本文地址:http://www.cnblogs.com/atree/archive/2010/04/20/WinFrom-GetPost-Cookie.html

注意Cookie的绑定,此处Cookie为获取验证码时记录的Cookie值。

 #region 提交数据方法// 公用Cookie信息public static CookieContainer myCookie;//返回的Html代码或结果public static string html;/// <summary>/// Get方式提交/// </summary>/// <param name="strUrl">目的资源链接</param>/// <returns>String:Response返回值</returns>public static string GetModel(string strUrl, string server){string strRet = null;try{HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strUrl);request.Timeout = 2000; HttpWebResponse response = (HttpWebResponse)request.GetResponse();System.IO.Stream resStream = response.GetResponseStream();Encoding encode = System.Text.Encoding.UTF8;StreamReader readStream = new StreamReader(resStream, encode);Char[] read = new Char[256];int count = readStream.Read(read, 0, 256);while (count > 0){String str = new String(read, 0, count);strRet = strRet + str;count = readStream.Read(read, 0, 256);}resStream.Close();}catch (Exception e){strRet = "";}return strRet;}/// <summary>/// 绑定Cookie、获取验证码/// </summary>/// <param name="strUrl">链接地址(验证码获取地址)</param>/// <param name="server">Referer地址</param>/// <returns>Stream:验证码的数据流</returns>public static Stream GetModelStream(string strUrl, string server)//, string proxy, bool isProxy){System.IO.Stream resStream = null;string cookie;try{HttpWebRequest httpRequest = (HttpWebRequest)HttpWebRequest.Create(strUrl);httpRequest.Timeout = 2000;httpRequest.Accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";httpRequest.Referer = server;httpRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 1.1.4322)";HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse();cookie = httpResponse.Headers.Get("Set-Cookie");myCookie = new CookieContainer();myCookie.SetCookies(new Uri(server), cookie);resStream = httpResponse.GetResponseStream();}catch { }return resStream;}/// <summary>/// Post方法提交/// </summary>/// <param name="strUrl">目的资源链接</param>/// <param name="strParm">传递的参数和值</param>/// <returns>String:Response返回值</returns>public static string PostModel(string strUrl, string server, string strParm){Encoding encode = System.Text.Encoding.UTF8;byte[] arrB = encode.GetBytes(strParm);HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(strUrl);myReq.Method = "POST";myReq.ContentType = "application/x-www-form-urlencoded";myReq.Timeout = 2000;myReq.Referer = server;myReq.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 1.1.4322)";myReq.ContentLength = arrB.Length;myReq.CookieContainer = myCookie;Stream outStream = myReq.GetRequestStream();outStream.Write(arrB, 0, arrB.Length);outStream.Close();WebResponse myResp = null;try{//接收HTTP做出的响应       myResp = myReq.GetResponse();}catch (Exception e){}Stream ReceiveStream = myResp.GetResponseStream();StreamReader readStream = new StreamReader(ReceiveStream, encode);Char[] read = new Char[256];int count = readStream.Read(read, 0, 256);string str = null;while (count > 0){str += new String(read, 0, count);count = readStream.Read(read, 0, 256);}readStream.Close();myResp.Close();return str;}#endregion

C#在WinFrom中Get/Post请求及QQ农场Cookie保存相关推荐

  1. 关于JQuery中的ajax请求或者post请求的回调方法中的操作执行或者变量修改没反映的问题...

    前段时间做一个项目,而项目中所有的请求都要用jquery 中的ajax请求或者post请求,但是开始处理一些简单操作还好,但是自己写了一些验证就出现问题了,比如表单提交的时候,要验证帐号的唯一性,所以 ...

  2. postman简单教程,如何在请求中引用上次请求返回的值

    做接口测试,一定会遇到这种情况,需要拿上次请求的值在本次请求中使用,比如,我们去测试一个东西,要去登录才能做其他的操作,需要拿到登录返回数据中的某些字段,比如,token啊等... 如果发一次请求,就 ...

  3. php ajax session失效,PHP中解决ajax请求session过期退出登录问题

    1.session过期,如果直接是url请求,或者用户在打开的系统页面中直接清除缓存及cookie信息,可直接在php的入口文件中调用以下封装的方法,进行session信息判断以及页面的跳转,如: i ...

  4. java获取jsp页面参数_jsp页面中获取servlet请求中的参数方法总结

    jsp页面中获取servlet请求中的参数的办法详解 在JAVA WEB应用中,如何获取servlet请求中的参数,并传递给跳转的JSP页面?例如访问http://localhost:8088/bbs ...

  5. spring cloud gateway中解决第一次请求失败的问题

    spring cloud gateway中解决第一次请求失败的问题 参考文章: (1)spring cloud gateway中解决第一次请求失败的问题 (2)https://www.cnblogs. ...

  6. .net中对HTTP请求的两种请求:Get和Post的操作

    .net中对HTTP请求的简单操作总结 第一部分,HTTP协议的简单了解 一.           什么是HTTP协议 超文本传输协议 (HTTP-Hypertext transfer protoco ...

  7. HTTP协议---HTTP请求中的常用请求字段和HTTP的响应状态码及响应头

    http://blog.csdn.net/qxs965266509/article/details/8082810 用于HTTP请求中的常用请求头字段 Accept:用于高速服务器,客户机支持的数据类 ...

  8. jQuery中终止Ajax请求

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. ASP.NET中处理HTTP请求的原理 (转)

    ASP.Net产生的大背景: 在Internet时代的开端,客户端的需求非常有限:.htm文件就可以满足他们的需求.但是,随着时间的流逝,客户端需求的扩充超越了.htm文件或静态文件所包含的功能. 开 ...

最新文章

  1. 阿里云与WPS深度合作,开放数据处理生态
  2. linux java maven_Linux下安装及配置Java与Maven
  3. golang中int类型切片无需传指针
  4. 阿里云发布云原生加速器,携手生态企业拥抱数字时代
  5. 从视觉检测窥探人类大脑和数字大脑的差别
  6. 一个判断字符串是否是数字的正则表达式
  7. myeclipse启动报JVM terminated. Exit code=1
  8. Express框架使用以及数据库公共操作类整理(Win7下的NodeJs)
  9. 14款荣耀/华为机型获版本升级: 适配FlyPods Pro骨声纹识别
  10. 查找在Git中删除文件的时间
  11. java 容易犯错_写Java程序最容易犯错误有哪些呢?
  12. getaway网关转发去前缀_蚂蚁金服 Service Mesh 大规模落地系列 - 网关篇
  13. 【环境部署】基于FreeSSL生成免费SSL证书
  14. google浏览器html不提示,谷歌浏览器不显示标签页怎么回事 谷歌浏览器不显示标签页的解决方法...
  15. Hive详解之内表、外表和分区
  16. UNIX 与 WINDOWS 文本换行的差异
  17. Excel之动态数据分析报表
  18. win10重装系统后连不上公司服务器,Win10重装系统后网络连接不了,重装win10系统后不能上网解决方法...
  19. 服务器中心地址,互联网时间同步服务器地址(国家授时中心服务器)
  20. 2022-2027年(新版)中国大米行业营销战略与供应情况预测报告

热门文章

  1. 群雄逐鹿,谁将赢得5G时代的物联网战争?
  2. 神经网络中的「注意力」是什么?怎么用?
  3. 赔偿 525 万?联想前副总裁跳槽小米仲裁案后续,常程不服提起诉讼
  4. 让看不见的AI算法,助你拿下看得见的广阔市场
  5. 用 Heapster 监控集群 - 每天5分钟玩转 Docker 容器技术(176)
  6. win10下安装TensorFlow(CPU only)
  7. 实验三:实现一个大素数生成算法
  8. 函数嵌套函数传递this值
  9. Oracle 监听器无法启动(TNS-12537,TNS-12560,TNS-00507)
  10. iOS使用AVFoundation在视频上添加字幕以及控制字幕时间