« Je ne suis pas un robot » ou comment intégrer le reCaptcha de Google dans un site web asp.net

« Je ne suis pas un robot » ou comment intégrer le reCaptcha de Google dans un site web asp.net

Récupérer les clés reCaptcha de votre site web :

https://www.google.com/recaptcha/

Appuyer sur le bouton Get reCaptcha.

Vous obtiendrez une clé du site, appelée dans la suite laclédusite, et une clé privée, appelée dans la suite lacléprivée.

Dans le fichier .aspx :

Dans le <head></head> :

<script src=’https://www.google.com/recaptcha/api.js’></script>

Dans le <body></body> :

<asp:Label ID= »captcha » runat= »server »></asp:Label>

Dans le fichier .aspx.cs :

using System.Net;

protected void Page_Load(object sender, EventArgs e)

{

        if (!IsPostBack)

        {

               captcha.Text = 

                    « <div align=\ »center\ » style=\ »margin:20px;\ »> » +

                    « <div class=\ »g-recaptcha\ » data-sitekey=\ »laclédusite\ »></div> » +

                    « </div> »;

         }

}

A la fin de votre formulaire figure un bouton nommé Button1, dont l’événement OnClick est :

protected void Button1_Click(object sender, EventArgs e)

{

        string userResponse = Request.Params[« g-recaptcha-response »];       

        string URI = « https://www.google.com/recaptcha/api/siteverify »;

        string myParameters = « secret=lacléprivée&response= » + userResponse;

        using (WebClient wc = new WebClient())

        {

            wc.Headers[HttpRequestHeader.ContentType] = « application/x-www-form-urlencoded »;

            string HtmlResult = wc.UploadString(URI, myParameters);

            if (HtmlResult.IndexOf(« \ »success\ »: true ») > -1)

            {

                     ……. définir ici le traitement à réaliser ………

            }

            else 

            {

                     Response.Write(« alert(‘Vous êtes un robot, nous ne pouvons pas vous fournir le service demandé.’); »);

            }

       }

}

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *