/// 执行Put请求,获取返回的html public string PutForString() { var str = EasyHttpUtils.ReadAllAsString(ExecutForStream(Method.PUT), _responseEncoding); LogHtml(str); return(str); }
/// 执行GET请求,获取返回的html public string GetForString() { var stream = ExecutForStream(Method.GET); string str = EasyHttpUtils.ReadAllAsString(stream, _responseEncoding); LogHtml(str); return(str); }
/// 用指定的post内容执行post请求 public string PostForString(string postData) { _customePostData = postData; var str = EasyHttpUtils.ReadAllAsString(ExecutForStream(Method.POST), _responseEncoding); LogHtml(str); return(str); }
//用_request 提交异步请求 private async void submitRequestAsyc(HttpWebRequest request) { if (_request == null) { return; } HttpStatusCode statusCode = HttpStatusCode.NotFound; try { _response = (await request.GetResponseAsync()) as HttpWebResponse; Stream responseStream = _response.GetResponseStream(); if (_response.ContentEncoding.ToLower().Contains("gzip")) { responseStream = new GZipStream(responseStream, CompressionMode.Decompress); } else if (_response.ContentEncoding.ToLower().Contains("deflate")) { responseStream = new DeflateStream(responseStream, CompressionMode.Decompress); } var str = EasyHttpUtils.ReadAllAsString(responseStream, _responseEncoding); statusCode = _response.StatusCode; _cookieContainer.Add(_response.Cookies); _response.Close(); LogHtml(str); if (OnDataReturn != null) { OnDataReturn.Invoke(this, new DataReturn("0", EasyHttpUtils.UnicodeDencode(str))); //TODO } } catch (WebException ex) { _response = ex.Response as HttpWebResponse; if (_response != null) { var str = EasyHttpUtils.ReadAllAsString(_response.GetResponseStream(), _responseEncoding); statusCode = (ex.Response as HttpWebResponse).StatusCode; LogHtml(str); if (OnDataReturn != null) { OnDataReturn.Invoke(this, new DataReturn("0", EasyHttpUtils.UnicodeDencode(str))); //TODO } } } if (_logLevel != EasyHttpLogLevel.None) { try { LogRequet(); LogRespose(); } catch (Exception e) { Console.WriteLine("\nsubmitRequestAsyc error:" + e.Message); } } }
/// 执行DELETE请求,获取返回的html public string DeleteForString() { return(EasyHttpUtils.ReadAllAsString(ExecutForStream(Method.DELETE), _responseEncoding)); }