这里直接贴出代码 :
首先我在这里定义了返回值的方法,我们只需要将请求的URL 和 参数传过去,当然了如果api不需要参数我们可以不要参数,看需要。
/// <summary>
/// POST方式请求
/// </summary>
/// <param name="URL">请求接口地址</param>
/// <param name="paraS">请求参数server_str加密后的字符串</param>
/// <param name="paraC">请求参数client_str未加密字符串</param>
/// <param name="categoryoid">级类目编号</param>
/// <param name="category_name">级类目名称</param>
/// <param name="value_type">指数值类型(1.周指数;2.月指数;3.季度指数;4.年指数)</param>
/// <param name="index_singal">指数期数</param>
/// <param name="index_singal_name">期数名称</param>
/// <param name="index_num">指数值</param>
/// <param name="index_orvalue">指数涨跌值</param>
/// <param name="index_orlimit">指数涨跌幅</param>
/// <param name="index_date">指数发布日期</param>
/// <returns></returns>
public static string PostMoths(string URL, string paraS, string paraC, string categoryoid, string category_name, string value_type, string index_singal, string index_singal_name, string index_num, string index_orvalue, string index_orlimit, string index_date)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);//创建请求
request.Method = "POST"; //Post请求方式
request.ContentType = "application/x-www-form-urlencoded"; //内容类型
//参数
string paras = "client_str=" + paraC + "&server_str=" + paraS + "&categoryoid=" + categoryoid + "&category_name=" + category_name +
"&value_type=" + value_type + "&index_singal=" + index_singal + "&index_singal_name=" + index_singal_name +
"&index_num=" + index_num + "&index_orvalue=" + index_orvalue + "&index_orlimit=" + index_orlimit + "&index_date=" + index_date;
byte[] dataArray;
//将参数的字符串转化为UTF8编码字节
dataArray = Encoding.UTF8.GetBytes(paras);
//设置请求的ContentLength
request.ContentLength = dataArray.Length;
//获得请求流
Stream writer = request.GetRequestStream();
//将请求参数写入流
writer.Write(dataArray, 0, dataArray.Length);
//关闭请求流
writer.Close();
//获得响应流
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader Reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
return Reader.ReadToEnd();//返回获取到的结果数据
}
我这里使用控制台的方式呈现了返回的json数值