zoukankan      html  css  js  c++  java
  • C# HttpWebRequest post 请求传参数

    Dictionary<string, string> parameters = new Dictionary<string, string>(); //参数列表
    parameters.Add("paraName", "paraValue");
    string url = "";
    
    HttpWebRequest request = null;
    HttpWebResponse response = null;
    Stream reqStream = null;
    request = (HttpWebRequest)WebRequest.Create(url);
    request.Method = "post"; //设置为post请求
    request.ReadWriteTimeout = 5000;
    request.KeepAlive = false;
    request.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
    byte[] postData = Encoding.UTF8.GetBytes(BuildQuery(parameters, "utf8")); //使用utf-8格式组装post参数
    reqStream=request.GetRequestStream();
    reqStream.Write(postData, 0, postData.Length); 
    response = (HttpWebResponse)request.GetResponse();
    
    
    //组装请求参数
    private string BuildQuery(IDictionary<string, string> parameters, string encode)
    {
    StringBuilder postData = new StringBuilder();
    bool hasParam = false;
    IEnumerator<KeyValuePair<string, string>> dem = parameters.GetEnumerator();
    while (dem.MoveNext())
    {
    string name = dem.Current.Key;
    string value = dem.Current.Value;
    // 忽略参数名或参数值为空的参数
    if (!string.IsNullOrEmpty(name))
    {
    if (hasParam)
    {
    postData.Append("&");
    }
    postData.Append(name);
    postData.Append("=");
    if (encode == "gb2312")
    {
    postData.Append(HttpUtility.UrlEncode(value, Encoding.GetEncoding("gb2312")));
    }
    else if (encode == "utf8")
    {
    postData.Append(HttpUtility.UrlEncode(value, Encoding.UTF8));
    }
    else
    {
    postData.Append(value);
    }
    hasParam = true;
    }
    }
    return postData.ToString();
    }
    

      

  • 相关阅读:
    svg入门
    常用颜色对照表
    字节序
    eclipse常用快捷键
    jenkins 安装
    redis
    Linux
    jenkins
    jenkins
    jenkins- 自动部署java包至远程服务器
  • 原文地址:https://www.cnblogs.com/yachao1120/p/10902044.html
Copyright © 2011-2022 走看看