1、
public static string HttpPost(string Url, string postDataStr) { string retString = String.Empty; try {
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url); request.Method = "POST"; // request.ContentType = "application/json"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = Encoding.UTF8.GetByteCount(postDataStr);
if ((!String.IsNullOrEmpty(webProxy))) { WebProxy proxyObject = new WebProxy(webProxy, Int32.Parse(webProxyPort)); proxyObject.Credentials = new NetworkCredential(username, password, domain); request.Proxy = proxyObject; } //log.InfoFormat("username:{0};password:{1};domain:{2};webProxyPort:{3};Url:{4};PostData:{5}", username, // password, domain, webProxyPort, Url, postDataStr);
byte[] bytes = Encoding.UTF8.GetBytes(postDataStr);
Stream myRequestStream = request.GetRequestStream(); myRequestStream.Write(bytes, 0, bytes.Length); myRequestStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
//response.Cookies = cookie.GetCookies(response.ResponseUri); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8")); retString = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close(); //log.Info("doPostSuccess" + retString); } catch (Exception ex) { throw ex; } return retString; }
public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) {
//直接确认,否则打不开 return true; }
2、
public string Post(string url) { string postString = string.Format("id=oPuvzjs6b1lLtxRIZw9ptyeZgp5M&token=111111×tamp={0}&sign={1}", "1492415743", "02025cb99691bf230683eb624b7aebba7b253af0");
//string postString = "{{\"id\":\"oPuvzjs6b1lLtxRIZw9ptyeZgp5M\"}}"; //string postString = "userName=test&Title=test&Content=test"; // 初始化WebClient WebClient webClient = new WebClient(); webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); // 将字符串转换成字节数组 byte[] postData = Encoding.ASCII.GetBytes(postString); //ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用 //Encoding.GetEncoding("GB2312").GetBytes(postString) // 上传数据,返回页面的字节数组
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); byte[] responseData = webClient.UploadData(url, "POST", postData); //ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用 //Encoding.GetEncoding("GB2312").GetString(responseData) // 返回的将字节数组转换成字符串(HTML) string srcString = Encoding.UTF8.GetString(responseData);
return srcString; }
3、
public static string HttpGet(string Url) { string retString = String.Empty; try { if ("Local".Equals(Utility.Common.GetConfigValue("Environment"))) { ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); }
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "GET"; request.ContentType = "text/html;charset=UTF-8";
if ((!String.IsNullOrEmpty(webProxy))) { WebProxy proxyObject = new WebProxy(webProxy, Int32.Parse(webProxyPort)); proxyObject.Credentials = new NetworkCredential(username, password, domain); request.Proxy = proxyObject; }
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8")); retString = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close(); //log.InfoFormat("WechatService.doGetSuccess_Url:{0};retString:{1}", Url, retString); } catch (Exception ex) { log.ErrorFormat("WechatService.HttpGet_Error!Url:{0};ErrorMessage:{1}", Url, ex.Message); } return retString; }
转载于:https://www.cnblogs.com/Amity1006/p/6723708.html