Exemplo n.º 1
0
        public static HttpWebRequest CreateHttpRequest(string baseUrl, EnumWebRequestMethod method, NameValueCollection getArgs, int timeOut = 20000)
        {
            var    uri      = new Uri(baseUrl);
            string queryStr = BuildEscapeDataString(getArgs);

            if (!string.IsNullOrEmpty(queryStr))
            {
                baseUrl = string.Format("{0}{1}{2}", baseUrl, uri.Query.Length == 0 ? "?" : "&", queryStr);
            }
            return(WebUtil.CreateHttpRequest(baseUrl, method, timeOut));
        }
Exemplo n.º 2
0
        public static HttpWebRequest CreateHttpRequest(string url, EnumWebRequestMethod method = EnumWebRequestMethod.GET, int timeOut = 20000)
        {
            var req = HttpWebRequest.CreateHttp(url);

            req.Method = method.ToString();
            if (method == EnumWebRequestMethod.POST)
            {
                req.ContentType = EnumWebContentType.PostContentType;
            }
            req.ServicePoint.Expect100Continue = false;
            req.Timeout   = timeOut;
            req.UserAgent = EnumWebUserAgent.Mozilla40;
            return(req);
        }
Exemplo n.º 3
0
        protected HttpWebRequest CreateRequest(EnumWebRequestMethod method)
        {
            var req = WebUtil.CreateHttpRequest(this._baseUri, method, this.GetQueryArgs());

            if (this.Timeout > 0)
            {
                req.Timeout = this.Timeout;
            }
            if (method == EnumWebRequestMethod.POST)
            {
                string formStr = GetFormString();
                WebUtil.PostRequestText(req, formStr, Encoding.UTF8);
                formStr = null;
            }
            return(req);
        }
Exemplo n.º 4
0
        protected string RequestCore(EnumWebRequestMethod method)
        {
            int    retryTimes = 2;
            string callUrl    = string.Empty;
            string errorText  = string.Empty;

            do
            {
                try
                {
                    var req = CreateRequest(method);
                    callUrl = req.RequestUri.PathAndQuery;
                    this.PrepareRequest(req);
                    return(this.PostResponseText(WebUtil.GetResonseText(req)));
                }
                catch (WebException wex)
                {
                    try
                    {
                        var errorResp = wex.Response as HttpWebResponse;
                        if (null != errorResp)
                        {
                            errorText = WebUtil.GetResonseText(errorResp);
                            LogHelper.Insert(string.Format("call:{0}..{1}", callUrl, errorText), LogType.Error);
                        }
                    }
                    catch (Exception wex2)
                    {
                        LogHelper.Insert(wex2);
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Insert(ex, string.Format("call:{0}..", callUrl));
                }
            }while (--retryTimes > 0);
            return(WebErrorCode.ErrorResponse);
        }