public class HttpsHelper
{
private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true; //总是接受
}
public static string Get(string Url)
{
try
{
HttpWebRequest request = null;
request = WebRequest.Create(Url) as HttpWebRequest;
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
request.ProtocolVersion = HttpVersion.Version11;
// 这里设置了协议类型。
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
ServicePointManager.DefaultConnectionLimit = 100;
ServicePointManager.Expect100Continue = true;
request.Method = "GET"; //使用get方式发送数据
request.ContentType = "application/json";
request.AllowAutoRedirect = true;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
string result = string.Empty;
using (StreamReader sr = new StreamReader(stream))
{
result = sr.ReadToEnd();
}
return result;
}
catch (Exception ex)
{
return ex.Message;
}
}
public static string Post(string url, Dictionary<string, string> pairs)
{
try
{
HttpWebRequest request = null;
request = WebRequest.Create(url) as HttpWebRequest;
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
request.ProtocolVersion = HttpVersion.Version11;
// 这里设置了协议类型。
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
ServicePointManager.DefaultConnectionLimit = 100;
ServicePointManager.Expect100Continue = true;
request.Method = "POST";
request.ContentType = "application/json";
request.AllowAutoRedirect = true;
string content = JsonConvert.SerializeObject(pairs);
byte[] formData = Encoding.UTF8.GetBytes(content);
request.ContentLength = formData.Length;
Stream newStream = request.GetRequestStream();
newStream.Write(formData, 0, formData.Length);
newStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
string result = string.Empty;
using (StreamReader sr = new StreamReader(stream))
{
result = sr.ReadToEnd();
}
return result;
}
catch (Exception ex)
{
return ex.Message;
}
}
public static string PostToken(string url, Dictionary<string, string> pairs)
{
try
{
HttpWebRequest request = null;
request = WebRequest.Create(url) as HttpWebRequest;
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
request.ProtocolVersion = HttpVersion.Version11;
// 这里设置了协议类型。
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; ServicePointManager.DefaultConnectionLimit = 100;
ServicePointManager.Expect100Continue = true;
request.Method = "POST";
request.ContentType = "application/json";
request.AllowAutoRedirect = true;
request.Headers.Add("Authorization", "");
string content = JsonConvert.SerializeObject(pairs);
byte[] formData = Encoding.UTF8.GetBytes(content);
request.ContentLength = formData.Length;
Stream newStream = request.GetRequestStream();
newStream.Write(formData, 0, formData.Length);
newStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
string result = string.Empty;
using (StreamReader sr = new StreamReader(stream))
{
result = sr.ReadToEnd();
}
return result;
}
catch (Exception ex)
{
return ex.Message;
}
}
}
C#对接Https接口
于 2023-09-22 20:39:31 首次发布