Beispiel #1
0
        /// <summary>
        /// 根据传入的参数,得到相应Http请求数据(唯一公开方法)
        /// </summary>
        /// <param name="item">参数类对象</param>
        /// <returns>返回HttpResult类型</returns>
        public HttpResult GetHttpRequestData(HttpRequestParam item)
        {
            ////返回参数
            HttpResult result = new HttpResult();
            try
            {
                try
                {
                    ////准备参数
                    this.SetRequest(item);
                }
                catch (Exception ex)
                {
                    // 注释掉,业务层捕获异常,可以根据网络异常重试
                    return new HttpResult() { Cookie = string.Empty, Header = null, Html = ex.Message, StatusDescription = "出现异常:" + ex.Message };
                    throw ex;
                }

                try
                {
                    ////请求数据
                    using (this.response = (HttpWebResponse)this.request.GetResponse())
                    {
                        this.GetData(item, result);
                    }
                }
                catch (Exception ex)
                {
                    result.Html = ex.ToString();
                    LogManager.Log.WriteAppException(new AppException("获取返回数据异常", ex, ExceptionLevel.Info));
                    throw ex;
                }
            }
            finally
            {
                if (item.IsWriteLog)
                {
                    MInteractionParam param = new MInteractionParam()
                    {
                        DicContext = null,
                        Module = "HttpHelper",
                        Key1 = item.ProxyBusinessName,
                        Key2 = item.Method.ToUpper(),
                        SendAddress = item.URL,
                        SendContent = this.GetRequestInfo(item),
                        ReceiveContent = result.Html,
                        Message = this.GetRequestProxy(item),
                    };

                    LogManager.Log.InteractionLog(param);
                }

                this.AbortRequest();
            }

            return result;
        }
Beispiel #2
0
 /// <summary>
 /// InteractionLog
 /// </summary>
 /// <param name="model">model</param>
 public void InteractionLog(MInteractionParam model)
 {
     // 暂未实现
 }