"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é.');");

            }

       }

}


Commentaires

Posts les plus consultés de ce blog

Scénario d'une gestion durable de l'humanité imaginée par un informaticien

Comment éviter que deux divisions se chevauchent ?

Le contrat Pfizer passé avec l'Europe le 20/11/2020