"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
Enregistrer un commentaire