Exemple #1
0
        /// <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);
        }
Exemple #2
0
        /// <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);
        }
Exemple #3
0
        /// <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);
        }