目录

CHttp请求设置接收不安全的证书

目录

【C#】Http请求设置接收不安全的证书

在进行HTTP请求时,出现以下报错,可设置接收不安全证书跳过证书验证,建议仅测试环境设置,生产环境可能会造成系统漏洞 https://i-blog.csdnimg.cn/direct/336725e8ea53464e8f318f16045a9b3c.png

/// <summary>
/// HttpGet请求方法
/// </summary>
/// <param name="requestUrl"></param>
/// <returns></returns>
private JObject HttpFunc(string requestUrl, string method)
{
    string serviceAddress = requestUrl;
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serviceAddress);
    // 将 ServerCertificateCustomValidationCallback 设置为一个总是返回 true 的委托
    // 这意味着它将接受任何证书,不管是否有效
    request.ServerCertificateValidationCallback = (message, cert, chain, errors) => true;
    request.Method = method;
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream myResponseStream = response.GetResponseStream();
    StreamReader myStreamReader = new StreamReader(myResponseStream, System.Text.Encoding.UTF8);
    string retString = myStreamReader.ReadToEnd();
    myStreamReader.Close();
    myResponseStream.Close();
    var jObject = JObject.Parse(retString);
    return jObject;
}