Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / C#

Send a request to an SSL page from C#

1.44/5 (8 votes)
2 Feb 2007CPOL 1  
How to send a request to an SSL page from C#.

Introduction

Here, we will see a simple way to make a request to a page of type SSL from C#, using the HttpWebRequest class.

You can take this article as a reference: http://msdn2.microsoft.com/en-us/library/aa720131(VS.71).aspx.

Content

The first thing we must do is generate a class that implements the IcertificatePolicy interface. The class will have the form:

C#
public class MyPolicy : ICertificatePolicy 
{ 
    public bool CheckValidationResult( 
            ServicePoint srvPoint 
            , X509Certificate certificate 
            , WebRequest request 
            , int certificateProblem) 
    { 
        //Return True to force the certificate to be accepted. 
        return true; 
    } // end CheckValidationResult 
}

Next, to use this class, we must write:

C#
//Set certificatePolicy. 
System.Net.ServicePointManager.CertificatePolicy = new MyPolicy();

This call will be done before we instantiate the HttpWebRequest class. Before we run the application, we must modify the machine.config file, which is in the %WINDIR%\Microsoft.NET\Framework\v1.1.4322\CONFIG directory. The modifications should be:

Find the node called servicePointManager and modify the value of the checkCertificateName attribute. This has the value true by default, and you must change the value to false. Then this node will look like this:

XML
<servicePointManager checkCertificateName="false" 
      checkCertificateRevocationList="false"/>

Refer to Send a content type “multipart/form-data” request from C# for an example.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)