/// <summary> /// POST提交请求,上传文件,返回ApiResult对象 /// </summary> /// <typeparam name="T">ApiResult对象</typeparam> /// <param name="url">请求地址</param> /// <param name="fileName">文件名称</param> /// <param name="fileStream">文件流</param> /// <returns></returns> protected T Post <T>(string url, string fileName, Stream fileStream) where T : ApiOutput { var wr = new WeChatApiWebRequestHelper(); var obj = wr.HttpPost <T>(url, fileName, fileStream, out var result); if (obj != null) { obj.DetailResult = result; } RefreshAccessTokenWhenTimeOut(obj); return(obj); }
/// <summary> /// POST提交请求,返回ApiResult对象 /// </summary> /// <typeparam name="T">ApiResult对象</typeparam> /// <param name="url">请求地址</param> /// <param name="obj">提交的数据对象</param> /// <param name="serializeStrFunc"></param> /// <returns>ApiResult对象</returns> protected T Post <T>(string url, object obj, Func <string, string> serializeStrFunc = null) where T : ApiOutput { var wr = new WeChatApiWebRequestHelper(); var result = wr.HttpPost <T>(url, obj, out string resultStr); if (result != null) { result.DetailResult = resultStr; } RefreshAccessTokenWhenTimeOut(result); return(result); }
/// <summary> /// POST提交请求,返回ApiResult对象 /// </summary> /// <typeparam name="T">ApiResult对象</typeparam> /// <param name="url">请求地址</param> /// <param name="obj">提交的数据对象</param> /// <returns>ApiResult对象</returns> protected T PostXML <T>(string url, object obj, Func <string, string> serializeStrFunc = null) where T : PayResult { var wr = new WeChatApiWebRequestHelper(); string resultStr = null; var result = wr.HttpPost <T>(url, obj, out resultStr, serializeStrFunc, WebRequestDataTypes.XML, WebRequestDataTypes.XML); if (result != null) { result.DetailResult = resultStr; } return(result); }
/// <summary> /// POST提交请求,返回ApiResult对象 /// </summary> /// <typeparam name="T">ApiResult对象</typeparam> /// <param name="url">请求地址</param> /// <param name="jsonData">提交的数据</param> /// <returns>ApiResult对象</returns> protected T Post <T>(string url, string jsonData) where T : ApiResult { var wr = new WeChatApiWebRequestHelper(); var result = wr.HttpPost(url, jsonData); var obj = JsonConvert.DeserializeObject <T>(result); if (obj != null) { obj.DetailResult = result; } RefreshAccessTokenWhenTimeOut(obj); return(obj); }
/// <summary> /// POST提交请求,返回ApiResult对象 /// </summary> /// <typeparam name="T">ApiResult对象</typeparam> /// <param name="url">请求地址</param> /// <param name="jsonData">提交的数据</param> /// <returns>ApiResult对象</returns> protected T Post <T>(string url, string jsonData) where T : ApiOutput { var wr = new WeChatApiWebRequestHelper(); WeChatHelper.LoggerAction?.Invoke("api", string.Format("Pre POST Url:{0};JSON:{1};", url, jsonData)); var result = wr.HttpPost(url, jsonData); var obj = JsonConvert.DeserializeObject <T>(result); if (obj != null) { obj.DetailResult = result; } RefreshAccessTokenWhenTimeOut(obj); return(obj); }