public T PostFiles <T>(string url, object pars = null, ApiPostFile file = null) { var type = Method.POST; T data = PostFile <T>(url, type, pars, file); return(data); }
/// <summary> /// 获取API信息结果 /// </summary> /// <typeparam name="T">结果数据类型</typeparam> /// <param name="url">api地址</param> /// <param name="type">方法类型</param> /// <param name="pars">参数</param> /// <param name="file">附件</param> /// <returns></returns> private T PostFile <T>(string url, Method type, object pars = null, ApiPostFile file = null) { Request.Method = type; if (pars != null) { Request.AddObject(pars); } if (file != null) { file.FormName = "AttachFile"; int fileLength = Convert.ToInt32(file.FileStream.Length); byte[] fileBytes = new byte[fileLength]; Request.AddFile(file.FormName, fileBytes, file.SourceFileName); } var client = new RestClient(API_SITE + "/api" + url); client.CookieContainer = new System.Net.CookieContainer(); IRestResponse response = client.Execute(Request); if (response.ErrorException != null) { var s = response.Content; LogHelper.WriteLog_LocalTxt("调用API出错:" + s); throw new Exception("请求出错"); } try { var s = response.Content; T data = JsonConvert.DeserializeObject <T>(response.Content); return(data); } catch (Exception ex) { LogHelper.WriteLog_LocalTxt("序列化结果出错:" + ex.ToString()); } return(default(T)); }