Fork me on GitHub

C# 调用接口实例

1.方法:
` public static string GetApiData(string url,string token,Dictionary<string, object> dic)
{
string result = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/json";
request.Headers.Add("X-Access-Token", token);//添加token验证

        #region 添加Post 参数
        string parJsonStr = JsonConvert.SerializeObject(dic);

        byte[] data = Encoding.UTF8.GetBytes(parJsonStr);
        request.ContentLength = data.Length;
        using (Stream reqStream = request.GetRequestStream())
        {
            reqStream.Write(data, 0, data.Length);
            reqStream.Close();
        }
        #endregion

        HttpWebResponse resp = (HttpWebResponse)request.GetResponse();
        Stream stream = resp.GetResponseStream();
        //获取响应内容
        using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
        {
            result = reader.ReadToEnd();
        }

        return result;
    }`

2.调用

           dicM.Add("accountId", accId);
            dicM.Add("brCode", brCode);
            dicM.Add("beginBuildDate", $"{beginDate.ToString("yyyy-MM-dd HH:mm:ss").Split(' ')[0]}");
            dicM.Add("endBuildDate", $"{endDate.ToString("yyyy-MM-dd HH:mm:ss").Split(' ')[0]}");
            dicM.Add("page", $"{pageIndex}");
            dicM.Add("rows", $"{pageSize}");
            string resultM = GetApiData(url, token, dicM);

3.数据解析
RespData<KLTLISTM> mData = Newtonsoft.Json.JsonConvert.DeserializeObject<RespData<KLTLISTM>>(resultM);

4.相应的实体

public class RespData<T> where T:class
   {
       public int code { get; set; }
       public List<T> data { get; set; }
       public string message { get; set; }
       public object rows { get; set; }
       public int total { get; set; }
   }
posted @ 2021-06-03 18:03  madman98  阅读(1079)  评论(1编辑  收藏  举报