//异步请求
        public void ExecuteAsyc(Method method)
        {
            string url = string.Empty;

            if (method == Method.GET)
            {
                UrlToQuery(_url);
                url = this._url;
                //Console.WriteLine("url: 1------------>{0}", url);
                if (_keyValues.Count > 0)
                {
                    url = url + "?" + EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                }
                //Console.WriteLine("url: 2------------>{0}", url);
                _request = WebRequest.Create(url) as HttpWebRequest;
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                _request.Method          = "GET";
                _request.CookieContainer = _cookieContainer;
                WriteHeader();
            }
            else if (method == Method.POST)
            {
                url      = _url;
                _request = _tempRequest;
                _request.CookieContainer = _cookieContainer;
                _request.Method          = "POST";
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                WriteHeader();
                if (_isMultpart)
                {
                    EasyHttpUtils.WriteFileToRequest(_request, _keyValues);
                }
                else
                {
                    if (string.IsNullOrEmpty(_request.ContentType))
                    {
                        _request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
                    }
                    string querystring = EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                    //如果有自定义post内容,则写入自定义post数据,否则写入form(form优先)
                    if (!string.IsNullOrEmpty(_customePostData))
                    {
                        querystring = _customePostData;
                    }
                    //处理请求参数
                    using (var stream = _request.GetRequestStream())
                    {
                        byte[] postData = _postEncoding.GetBytes(querystring);
                        stream.Write(postData, 0, postData.Length);
                        stream.Close();
                    }
                }
            }
            submitRequestAsyc(_request);
        }
        /// 根据指定方法执行请求,并返回原始Response
        public HttpWebResponse Execute(Method method)
        {
            string url = string.Empty;

            //get方式直接拼接url
            if (method == Method.GET)
            {
                UrlToQuery(_url);
                url = this._url;
                if (_keyValues.Count > 0)
                {
                    //分解参数
                    url = url + "?" + EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                }
                _request = WebRequest.Create(url) as HttpWebRequest;
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                _request.Method          = "GET";
                _request.CookieContainer = _cookieContainer;
                WriteHeader();
            }
            //post方式需要写入
            else if (method == Method.POST)
            {
                url      = _url;
                _request = _tempRequest;
                _request.CookieContainer = _cookieContainer;
                _request.Method          = "POST";
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                WriteHeader();
                if (_isMultpart)
                {
                    EasyHttpUtils.WriteFileToRequest(_request, _keyValues);
                }
                else
                {
                    if (string.IsNullOrEmpty(_request.ContentType))
                    {
                        _request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
                    }
                    string querystring = EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                    if (_customePostData != null)
                    {
                        querystring = _customePostData;
                    }
                    using (var stream = _request.GetRequestStream())
                    {
                        byte[] postData = _postEncoding.GetBytes(querystring);
                        stream.Write(postData, 0, postData.Length);
                        stream.Close();
                    }
                }
            }
            else if (method == Method.PUT)
            {
                UrlToQuery(_url);
                url = this._url;
                if (_keyValues.Count > 0)
                {
                    url = url + "?" + EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                }
                _request = WebRequest.Create(url) as HttpWebRequest;
                _request.CookieContainer = _cookieContainer;

                WriteHeader();
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                _request.Method = "PUT";
            }
            else if (method == Method.DELETE)
            {
                UrlToQuery(_url);
                url = this._url;
                if (_keyValues.Count > 0)
                {
                    url = url + "?" + EasyHttpUtils.NameValuesToQueryParamString(_keyValues);
                }
                _request = WebRequest.Create(url) as HttpWebRequest;

                _request.CookieContainer = _cookieContainer;
                EasyHttpUtils.CopyHttpHeader(_tempRequest, _defaultHeaderRequest, _request);
                _request.Method = "DELETE";
                WriteHeader();
            }

            try{
                _response = _request.GetResponse() as HttpWebResponse;
            }
            catch (WebException ex) {
                Console.WriteLine("\n请求出错--------->:{0}", ex.Message);
                return(null);
            }

            if (_response != null)
            {
                _cookieContainer.Add(_response.Cookies);        //添加返回的cookie 到 cookieContainer
            }
            if (_logLevel != EasyHttpLogLevel.None)
            {
                try{
                    LogRequet();
                    LogRespose();
                }
                catch (Exception e) {
                    Console.WriteLine("\nlog出错:" + e.Message);
                }
            }
            return(_response);
        }