zoukankan      html  css  js  c++  java
  • 如何在WinForm中发送HTTP请求

    Winform窗体中发送HTTP请求


    手工发送HTTP请求主要是调用 System.Net的HttpWebResponse方法

    手工发送HTTP的GET请 求:

     1 string strURL = "http://localhost/Play/CH1/Service1.asmx/doSearch?keyword=";
     2 strURL +=this.textBox1.Text;
     3 System.Net.HttpWebRequest request;
     4 // 创建一个HTTP请求
     5 request = (System.Net.HttpWebRequest)WebRequest.Create(strURL);
     6 //request.Method="get";
     7 System.Net.HttpWebResponse response;
     8 response = (System.Net.HttpWebResponse)request.GetResponse();
     9 System.IO.Stream s;
    10 s = response.GetResponseStream();
    11 XmlTextReader Reader = new XmlTextReader(s);
    12 Reader.MoveToContent();
    13 string strValue = Reader.ReadInnerXml();
    14 strValue = strValue.Replace("&lt;","<");
    15 strValue = strValue.Replace("&gt;",">");
    16 MessageBox.Show(strValue); 
    17 Reader.Close();

    手工发送HTTP的POST请求

     1 string strURL = "http://localhost/Play/CH1/Service1.asmx/doSearch";
     2 System.Net.HttpWebRequest request;
     3 
     4 request = (System.Net.HttpWebRequest)WebRequest.Create(strURL);
     5 //Post请求方式
     6 request.Method="POST";
     7 // 内容类型
     8 request.ContentType="application/x-www-form-urlencoded";
     9 // 参数经过URL编码
    10 string paraUrlCoded = System.Web.HttpUtility.UrlEncode("keyword");
    11 paraUrlCoded += "=" + System.Web.HttpUtility.UrlEncode(this.textBox1.Text);
    12 byte[] payload;
    13 //将URL编码后的字符串转化为字节
    14 payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
    15 //设置请求的 ContentLength 
    16 request.ContentLength = payload.Length;
    17 //获得请 求流
    18 Stream writer = request.GetRequestStream();
    19 //将请求参数写入流
    20 writer.Write(payload,0,payload.Length);
    21 // 关闭请求流
    22 writer.Close();
    23 System.Net.HttpWebResponse response;
    24 // 获得响应流
    25 response = (System.Net.HttpWebResponse)request.GetResponse();
    26 System.IO.Stream s;
    27 s = response.GetResponseStream();
    28 XmlTextReader Reader = new XmlTextReader(s);
    29 Reader.MoveToContent();
    30 string strValue = Reader.ReadInnerXml();
    31 strValue = strValue.Replace("&lt;","<");
    32 strValue = strValue.Replace("&gt;",">");
    33 MessageBox.Show(strValue); 
    34 Reader.Close(); 
  • 相关阅读:
    css03层次选择器
    css02基本选择器
    Distance Between Points
    CloseHandle(IntPtr handle)抛异常
    关于win7上内存占用较大的说明
    C# WPF 显示图片和视频显示 EmuguCv、AForge.Net测试(续)
    五种开源协议的比较(BSD_Apache_GPL_LGPL_MIT)
    C# WPF 显示图片和视频显示 EmuguCv、AForge.Net测试
    Opencv不用每次创建项目配置vs2010 vc++目录 库目录等项
    矩阵运算
  • 原文地址:https://www.cnblogs.com/MDK-L/p/3791303.html
Copyright © 2011-2022 走看看