public static string HttpPostJSON(string url, string data)
{
System.Net.ServicePointManager.SecurityProtocol = (SecurityProtocolType)192 | (SecurityProtocolType)768 | (SecurityProtocolType)3072;
Encoding encode = Encoding.GetEncoding(“UTF-8”);
string htmlAll = “”;
try
{
StringBuilder sb = new StringBuilder();
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = “POST”;
req.Headers.Set(“Accept-Language”, “zh-CN,en”);
req.Headers.Set(“UA-CPU”, “x86”);
//req.UserAgent = “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; QQDownload 1.7; .NET CLR 1.1.4322; .NET CLR 2.0.50727)”;
req.UserAgent = “56xt/1.0 (Language=C#)”;
//req.Headers.Set(“Content-Type”, “application/x-www-form-urlencoded;charset=utf-8”);
req.ContentType = “application/json”;
if (data != "")
{
byte[] SomeBytes = encode.GetBytes(data.ToString());
req.ContentLength = SomeBytes.Length;
Stream newStream = req.GetRequestStream();
newStream.Write(SomeBytes, 0, SomeBytes.Length);
newStream.Close();
}
else
{
req.ContentLength = 0;
}
StreamReader sr = null;
HttpWebResponse res = null;
Stream resStream = null;
try
{
res = (HttpWebResponse)req.GetResponse();
resStream = res.GetResponseStream();
byte[] buffer = new byte[1024];
int bytesRead;
//取得WEB响应的数据流
while ((bytesRead = resStream.Read(buffer, 0, buffer.Length)) > 0)
{
sb.Append(Encoding.UTF8.GetString(buffer, 0, bytesRead));
}
//根据上面定义的数据流,以默认编码的方式定义一个读数据流
sr = new StreamReader(resStream, encode);
}
catch (WebException e)
{
res = (HttpWebResponse)e.Response;
resStream = res.GetResponseStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = resStream.Read(buffer, 0, buffer.Length)) > 0)
{
sb.Append(Encoding.UTF8.GetString(buffer, 0, bytesRead));
}
//根据上面定义的数据流,以默认编码的方式定义一个读数据流
sr = new StreamReader(resStream, encode);
}
htmlAll = sb.ToString();
// 读取数据流中的内容
//关闭数据流
resStream.Close();
//关闭读数据流并释放资源
sr.Close();
}
catch (Exception ex)
{
string s = ex.Message;
}
return htmlAll;
}
private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true; //总是接受
} public static string HttpPostJSON(string url, string data)
{
System.Net.ServicePointManager.SecurityProtocol = (SecurityProtocolType)192 | (SecurityProtocolType)768 | (SecurityProtocolType)3072;
Encoding encode = Encoding.GetEncoding("UTF-8");
string htmlAll = "";
try
{
StringBuilder sb = new StringBuilder();
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.Headers.Set("Accept-Language", "zh-CN,en");
req.Headers.Set("UA-CPU", "x86");
req.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; QQDownload 1.7; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
req.UserAgent = "56xt/1.0 (Language=C#)";
//req.Headers.Set("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
req.ContentType = "application/json";
if (data != "")
{
byte[] SomeBytes = encode.GetBytes(data.ToString());
req.ContentLength = SomeBytes.Length;
Stream newStream = req.GetRequestStream();
newStream.Write(SomeBytes, 0, SomeBytes.Length);
newStream.Close();
}
else
{
req.ContentLength = 0;
}
StreamReader sr = null;
HttpWebResponse res = null;
Stream resStream = null;
try
{
res = (HttpWebResponse)req.GetResponse();
resStream = res.GetResponseStream();
byte[] buffer = new byte[1024];
int bytesRead;
//取得WEB响应的数据流
while ((bytesRead = resStream.Read(buffer, 0, buffer.Length)) > 0)
{
sb.Append(Encoding.UTF8.GetString(buffer, 0, bytesRead));
}
//根据上面定义的数据流,以默认编码的方式定义一个读数据流
sr = new StreamReader(resStream, encode);
}
catch (WebException e)
{
res = (HttpWebResponse)e.Response;
resStream = res.GetResponseStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = resStream.Read(buffer, 0, buffer.Length)) > 0)
{
sb.Append(Encoding.UTF8.GetString(buffer, 0, bytesRead));
}
//根据上面定义的数据流,以默认编码的方式定义一个读数据流
sr = new StreamReader(resStream, encode);
}
htmlAll = sb.ToString();
// 读取数据流中的内容
//关闭数据流
resStream.Close();
//关闭读数据流并释放资源
sr.Close();
}
catch (Exception ex)
{
string s = ex.Message;
}
return htmlAll;
}
private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true; //总是接受
}