• 如何在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(); 
  • 相关阅读:
    冒泡排序
    【代码审计】appcms 文件包含漏洞
    【知识学习】PHP实现批量替换字典后缀
    【代码学习】PYTHON 列表循环遍历及列表常见操作
    【代码学习】PYTHON字符串的常见操作
    【知识学习】Sublime Text 快捷键精华版
    【代码审计】变量覆盖漏洞详解
    【渗透测试】Msf提权步骤
    【代码审计】VAuditDemo 前台搜索功能反射型XSS
    【代码审计】VAuditDemo 前台搜索注入
  • 原文地址:https://www.cnblogs.com/MDK-L/p/3791303.html
Copyright © 2020-2023  润新知