zoukankan      html  css  js  c++  java
  • C# 发送Http协议 模拟 Post Get请求

    1.参数 paramsValue的格式 要和 Reques.ContentType一致,

    如果 contentype  "application/x-www-form-urlencoded" 表单类型,那么  参数为   a=1&b=2 形式

    如果 。。。         "application/json"  json 类型  那么参数就为  "{a:1,b:2}" 格式

     

    2.可以添加自定义header,  add(key,value)

    接受获取header   Request.Headers.Get(key)

    Get

    public static string HttpGet(string url)
           { 
               string result=string.Empty;
               try
               {
                   HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);
                   wbRequest.Method = "GET";
                   HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();
                   using (Stream responseStream = wbResponse.GetResponseStream())
                   {
                       using (StreamReader sReader = new StreamReader(responseStream))
                       {
                           result = sReader.ReadToEnd();
                       }
                   }
               }
               catch (Exception ex)
               { 
               
               }
               return result;
           }
    

    Post 请求

    public static string HttpPost(string url, string paramData, Dictionary<string, string> headerDic = null)
           {
               string result = string.Empty;
               try
               {
                   HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);
                   wbRequest.Method = "POST";
                   wbRequest.ContentType = "application/x-www-form-urlencoded";
                   wbRequest.ContentLength = Encoding.UTF8.GetByteCount(paramData);
                   if (headerDic != null && headerDic.Count > 0)
                   {
                       foreach (var item in headerDic)
                       {
                           wbRequest.Headers.Add(item.Key, item.Value);
                       }
                   }
                   using (Stream requestStream = wbRequest.GetRequestStream())
                   {
                       using (StreamWriter swrite = new StreamWriter(requestStream))
                       {
                           swrite.Write(paramData);
                       }
                   }
                   HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();
                   using (Stream responseStream = wbResponse.GetResponseStream())
                   {
                       using (StreamReader sread = new StreamReader(responseStream))
                       {
                           result = sread.ReadToEnd();
                       }
                   }
               }
               catch (Exception ex)
               { }
             
               return result;
           }
    
    
  • 相关阅读:
    Spring Bean Scope 有状态的Bean 无状态的Bean
    管理Mysql常用指令
    mysql处理特殊字符
    linux下memcached安装 和redis安装,jdk,tomcat,mysql 安装
    Jenkins
    tomcat站点配置
    tomcat配置jdbc
    spring 深入reading
    JAVA随机数之多种方法从给定范围内随机N个不重复数
    Intellij IDEA 快捷键整理
  • 原文地址:https://www.cnblogs.com/duanbiflying/p/7464713.html
Copyright © 2011-2022 走看看