جزئیات محصول

دانلود کد استفاده از Captcha برای جلوگیری از اسپم در فرم‌ها با ASP.NET Web Form

دانلود کد استفاده از Captcha برای جلوگیری از اسپم در فرم‌ها با ASP.NET Web Form

قیمت: 35,000 تومان

خرید فایل


مشاهده پیشنمایش

پیشنمایش برای محصولاتی که نیاز به نمایش دمو دارند می باشد

 استفاده از **Captcha** در فرم‌ها یکی از روش‌های مؤثر برای جلوگیری از اسپم و اطمینان از این است که کاربر واقعی است. در اینجا روش پیاده‌سازی **Captcha** با استفاده از ASP.NET Web Forms را بررسی می‌کنیم. ما از **Google reCAPTCHA** استفاده خواهیم کرد که یکی از معروف‌ترین و محبوب‌ترین راه‌حل‌ها برای این کار است.

 
### مراحل پیاده‌سازی
 
#### 1. ثبت‌نام برای reCAPTCHA
 
1. به وب‌سایت [Google reCAPTCHA](https://www.google.com/recaptcha) بروید.
2. با حساب Google خود وارد شوید و یک پروژه جدید ثبت کنید.
3. پس از ثبت‌نام، دو کلید دریافت خواهید کرد: **Site Key** و **Secret Key**. این کلیدها برای استفاده از reCAPTCHA در برنامه شما ضروری هستند.
 
#### 2. ایجاد صفحه ASP.NET Web Form
 
حالا یک صفحه جدید به نام `Contact.aspx` ایجاد کرده و کد زیر را به آن اضافه کنید:
 
```html
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Contact.aspx.cs" Inherits="YourNamespace.Contact" %>
 
    Contact Us
   
   
   
       
           

Contact Us

           
           
           
           
           
           
       
   
```
 
### 3. کد پشت (`Code-Behind`)
 
در فایل `Contact.aspx.cs`، کد زیر را اضافه کنید:
 
```csharp
using System;
using System.Net.Http;
using System.Threading.Tasks;
using System.Web.UI;
 
namespace YourNamespace
{
    public partial class Contact : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }
 
        protected async void btnSubmit_Click(object sender, EventArgs e)
        {
            var recaptchaResponse = Request.Form["g-recaptcha-response"];
            var isCaptchaValid = await ValidateCaptcha(recaptchaResponse);
 
            if (isCaptchaValid)
            {
                // عملیات ارسال پیام
                lblMessage.Text = "Your message has been sent successfully.";
            }
            else
            {
                lblMessage.Text = "Captcha validation failed. Please try again.";
            }
        }
 
        private async Task ValidateCaptcha(string recaptchaResponse)
        {
            const string secretKey = "YOUR_SECRET_KEY";
            using (var client = new HttpClient())
            {
                var result = await client.PostAsync($"https://www.google.com/recaptcha/api/siteverify?secret={secretKey}&response={recaptchaResponse}", null);
                var jsonResult = await result.Content.ReadAsStringAsync();
                dynamic jsonData = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonResult);
                return jsonData.success == "true";
            }
        }
    }
}
```
 
### توضیحات کد
 
1. **جایگذاری Site Key**: در بخش `
`، `YOUR_SITE_KEY` را با **Site Key** خود جایگزین کنید.
 
2. **تأیید Captcha**: در متد `btnSubmit_Click`، مقدار Captcha از درخواست فرم دریافت می‌شود و به متد `ValidateCaptcha` ارسال می‌گردد. این متد به Google ارسال می‌شود تا تأیید کند که Captcha معتبر است.
 
3. **عملیات ارسال پیام**: اگر Captcha معتبر باشد، می‌توانید عملیات مربوط به ارسال پیام یا هر کاری که لازم است را انجام دهید.
 
4. **استفاده از HttpClient**: از `HttpClient` برای ارسال درخواست به Google استفاده می‌شود و پاسخ آن برای تأیید Captcha بررسی می‌شود.
 
### نتیجه‌گیری
 
با این پیاده‌سازی، شما می‌توانید از **Captcha** برای جلوگیری از اسپم در فرم‌های خود در ASP.NET Web Forms استفاده کنید. این روش امنیت بیشتری را برای فرم‌های شما فراهم می‌کند و از ارسال درخواست‌های غیرمجاز جلوگیری می‌کند.
 
اگر سوال یا نیاز به توضیحات بیشتری دارید، خوشحال می‌شوم کمک کنم!
| صفحه قابل مشاهده: دانلود کد استفاده از Captcha برای جلوگیری از اسپم در فرم‌ها با ASP.NET Web Form می‌باشد