عنوان:

‫پیاده سازی Google reCaptcha در ASP.NET Core


نویسنده: شریعتی پیام
تاریخ: ۱۴۰۰/۰۶/۰۶ ۱۸:۵۱
آدرس: www.dntips.ir

در این روش تنها کافی است که ویوو مدلی که میخواید باهاش عمل اعتبار سنجی google reCaptcha رو انجام بدید از ویوو مدل GoogleReCaptchaModelBase ارث بری کند و با بررسی ModelState صحت درستی Captcha هم بررسی میشود.

public class LoginViewModel : GoogleReCaptchaModelBase
{
    // Fields
}




مشاهده مطلب اصلی

نظرات

  • زمانی فرهاد در ۱۴۰۰/۰۶/۰۷ ۲۱:۱۴
    درصورت پیاده سازی این مطلب، به نکات زیر توجه کنید:
    1. متد httpClient.GetAsync که از نوع async است، درون متد IsValid فراخوانی شده است که sync میباشد. بهتر است به جای استفاده از .Result
      var httpResponse = httpClient.GetAsync($"https://www.google.com/recaptcha/api/siteverify?secret={reCaptchaSecret}&response={reCaptchResponse}").Result;
      از .GetAwaiter().GetResult() 
      var httpResponse = httpClient.GetAsync($"https://www.google.com/recaptcha/api/siteverify?secret={reCaptchaSecret}&response={reCaptchResponse}").GetAwaiter().GetResult();
      استفاده کنید.
    2. HttpClient به صورت صحیح پیاده سازی نشده است و Dispose نمیشود. بهتر است قبل از پیاده سازی این مطلب، مقاله روش صحیح استفاده از HttpClient  را مطالعه کنید.