调用代码
//引入:using System.Collections;
Hashtable headht = new Hashtable();
headht.Add("Authorization", "内容");
HttpHelpMethods.PostJson(url, postData, headht);
核心代码
#region POST-JSON
/// <summary>
/// http Post请求 发送Json数据
/// </summary>
/// <param name="url"></param>
/// <param name="postData"></param>
/// <param name="headht"></param>
/// <returns></returns>
public static string PostJson(string url, string postData, Hashtable headht = null)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/json;charset=UTF-8";
request.UserAgent = "www.qq.cc/WebRequest";
request.Accept = "application/json";
#region headers设置
if (headht != null)
{
foreach (DictionaryEntry item in headht)
{
request.Headers.Add(item.Key.ToString(), item.Value.ToString());
}
}
#endregion
byte[] paramJsonBytes;
paramJsonBytes = System.Text.Encoding.UTF8.GetBytes(postData);
request.ContentLength = paramJsonBytes.Length;
Stream writer;
try
{
writer = request.GetRequestStream();
}
catch (Exception e)
{
writer = null;
Console.Write("连接服务器失败!");
}
writer.Write(paramJsonBytes, 0, paramJsonBytes.Length);
writer.Close();
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
response = ex.Response as HttpWebResponse;
}
Stream resStream = response.GetResponseStream();
StreamReader reader = new StreamReader(resStream);
string text = reader.ReadToEnd();
return text;
}
#endregion