/// <summary> /// Execute use Get /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url"></param> /// <param name="addHeaders"></param> /// <returns></returns> public ReturnModel <T> Get <T>(string url, IDictionary <string, string> addHeaders = null) { ReturnModel <T> result = new ReturnModel <T>(); try { using (var client = new CustWebClient()) { client.Encoding = Encoding.UTF8; client.Headers.Add(HttpRequestHeader.ContentType, "application/json"); if (addHeaders != null && addHeaders.Count > 0) { foreach (var item in addHeaders) { client.Headers.Add(item.Key, item.Value); } } var returnContent = client.DownloadString(url); result.Content = JsonStringDeserializeObject <T>(returnContent); result.IsSuccess = true; }; } catch (WebException ex) { throw(ex); } catch (Exception ex) { result.IsSuccess = false; result.ErrorMsg = GetExceptionDetailMessage(ex); } return(result); }
/// <summary> /// Execute use Post /// </summary> /// <typeparam name="T1"></typeparam> /// <typeparam name="T2"></typeparam> /// <param name="url"></param> /// <param name="data"></param> /// <param name="addHeaders"></param> /// <returns></returns> public ReturnModel <T2> Post <T1, T2>(string url, T1 data, IDictionary <string, string> addHeaders = null) { ReturnModel <T2> result = new ReturnModel <T2>(); try { var jsonText = ObjectDeserializeJsonStr(data, Formatting.None, NullValueHandling.Ignore); using (var client = new CustWebClient()) { client.Encoding = Encoding.UTF8; client.Headers.Add(HttpRequestHeader.ContentType, "application/json"); if (addHeaders != null && addHeaders.Count > 0) { foreach (var item in addHeaders) { client.Headers.Add(item.Key, item.Value); } } var response = client.UploadData(url, "POST", Encoding.UTF8.GetBytes(jsonText)); var returnContent = Encoding.UTF8.GetString(response); result.Content = JsonStringDeserializeObject <T2>(returnContent); result.IsSuccess = true; }; } catch (WebException ex) { throw (ex); } catch (Exception ex) { result.IsSuccess = false; result.ErrorMsg = GetExceptionDetailMessage(ex); } return(result); }