/// <summary> /// 获取接口返回Content /// </summary> /// <param name="retMessage"></param> /// <returns></returns> public static string GetRetContent(GeneralInfo reponseObj, InterfaceType InterfaceType) { string strContent = string.Empty; try { if (reponseObj != null && !string.IsNullOrEmpty(reponseObj.content)) { strContent = CommonHelper.Get3DESDecodeContent(reponseObj.passWord, reponseObj.content); } } catch (Exception ex) { Logging.Log4NetHelper.Error(typeof(WSInterface), string.Format(Message.DecodeFailed, InterfaceType.GetDescription()) + ex.Message + System.Environment.NewLine + ex.StackTrace); } return(strContent); }
/// <summary> /// 调用服务端接口并返回Content /// </summary> /// <param name="strRequest">请求Json字符串</param> /// <param name="InterfaceType">接口枚举</param> /// <param name="result">是否成功</param> /// <returns>Content值</returns> public static string GetResponse(string strRequest, InterfaceType InterfaceType, ref bool result, out string errorMsg, int timeOut = 60000) { string strContent = string.Empty; errorMsg = string.Empty; try { Logging.Log4NetHelper.Debug(typeof(WSInterface), strRequest); string requestDownLoadXML = GlobalBW(strRequest); if (!string.IsNullOrEmpty(requestDownLoadXML)) { requestDownLoadXML = System.Web.HttpUtility.UrlEncode(requestDownLoadXML, System.Text.Encoding.UTF8); string fpqzResponse = CommonHelper.HttpPost(ConfigHelper.GetAppSettingValue(InterfaceType.ToString()), requestDownLoadXML, timeOut); JavaScriptSerializer jserial = new JavaScriptSerializer(); GeneralInfo dyfpqzResponse = jserial.Deserialize <GeneralInfo>(fpqzResponse); if (dyfpqzResponse.state.returnCode.ToString() != "0000") { result = false; //errorMsg = string.Format("{0}({1})", dyfpqzResponse.state.returnMessage, dyfpqzResponse.state.returnCode); errorMsg = string.Format("{0}", dyfpqzResponse.state.returnMessage); Logging.Log4NetHelper.Debug(typeof(WSInterface), string.Format(Message.GetResponseFailed, InterfaceType.GetDescription(), dyfpqzResponse.state.returnCode, dyfpqzResponse.state.returnMessage)); } else { result = true; } if (!string.IsNullOrEmpty(dyfpqzResponse.content)) { strContent = GetRetContent(dyfpqzResponse, InterfaceType); } } } catch (Exception ex) { result = false; Logging.Log4NetHelper.Error(typeof(WSInterface), string.Format(Message.GetResponseException, InterfaceType.GetDescription()) + ex.Message + System.Environment.NewLine + ex.StackTrace); strContent = ex.Message; if (ex.Message.Contains("timeout") || ex.Message.Contains("timed out")) { strContent = PRO_ReceiptsInvMgr.Resources.Message.TimeOutError; } else if (ex.Message.Contains("No connection could be made") || ex.Message.Contains("Unable to connect") || ex.Message.Contains("Not Found")) { strContent = PRO_ReceiptsInvMgr.Resources.Message.ConnectError; } else if (ex.Message.Contains("Internal Server Error")) { strContent = PRO_ReceiptsInvMgr.Resources.Message.InternalError; } errorMsg = strContent; } return(strContent); }
/// <summary> /// 调用服务端接口并获取返回报文对象 /// </summary> /// <param name="InterfaceType">接口枚举</param> /// <param name="result">是否上传或下载成功</param> /// <returns></returns> public static GeneralInfo GetResponseObject(string strRequest, InterfaceType InterfaceType) { GeneralInfo dyfpqzResponse = null; try { string requestDownLoadXML = GlobalBW(strRequest); if (!string.IsNullOrEmpty(requestDownLoadXML)) { requestDownLoadXML = System.Web.HttpUtility.UrlEncode(requestDownLoadXML, System.Text.Encoding.UTF8); string fpqzResponse = CommonHelper.HttpPost(ConfigHelper.GetAppSettingValue(InterfaceType.ToString()).ToString(), requestDownLoadXML); JavaScriptSerializer jserial = new JavaScriptSerializer(); dyfpqzResponse = jserial.Deserialize <GeneralInfo>(fpqzResponse); if (dyfpqzResponse.state.returnCode.ToString() != "0000") { Logging.Log4NetHelper.Error(typeof(WSInterface), string.Format(Message.GetResponseFailed, InterfaceType.GetDescription(), dyfpqzResponse.state.returnCode, dyfpqzResponse.state.returnMessage)); } } } catch (Exception ex) { Logging.Log4NetHelper.Error(typeof(WSInterface), string.Format(Message.GetResponseException, InterfaceType.GetDescription()) + ex.Message + System.Environment.NewLine + ex.StackTrace); throw; } return(dyfpqzResponse); }