درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
تخفیف های وب سایت
همه تخفیف ها

عضویت در

کانال تلگرام

توسینسو

اطلاعات مطلب
مدرس/نویسنده
علی شکرالهی
امتیاز: 514
رتبه:438
0
5
1
8

ایجاد یک Captcha ی ساده در ASP.NET MVC

تاریخ 89 ماه قبل
نظرات 2
بازدیدها 925
پیاده سازی یک Captcha ی بسیار ساده در ASP.NET MVC ، در این مقاله قصد دارم تا طریقه ی پیاده سازی یک Captcha ساده رو براتون توضیح بدم .ابتدا یک Controller با نام Home به پروژه اضافه کرده و داخل آن اکشن های Index و CaptchaImage رو به شکل زیر می نویسیم :

public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult CaptchaImage()
    {
        
    }

}

حال کد زیر را داخل اکشن CaptchaImage قرار میدیم :

public ActionResult CaptchaImage()
{
    var bitmap = new Bitmap(50,30,PixelFormat.Format24bppRgb);
    var graphic = Graphics.FromImage(bitmap);

    var random = new Random();
    var captchaNum = random.Next(1234, 9999);

    graphic.FillRectangle(new SolidBrush(Color.Black), 0, 0, 50, 30f);
    graphic.DrawString(captchaNum.ToString(), new Font("Tahoma", 10, FontStyle.Bold),
                       new SolidBrush(Color.White), 4, 8);

    var memoryStream = new MemoryStream();
    bitmap.Save(memoryStream, ImageFormat.Png);

    return File(memoryStream.ToArray(), "image/png");

}


حال برای استفاده از این Captcha در داخل View اکشن Index کد زیر رو قرار میدیم:

<img src="@Url.Action("CaptchaImage")" alt="captcha" />


درصورتی که برنامه رو اجرا کنید ، می بینید که یک عدد رندوم ایجاد شده و در تگ img نمایش داده میشه .
البته این روش یک مشکل داره و اون اینکه امکان ارسال درخواستهای fake جهت ایجاد تصاویر زیاد وجود داره که در مقاله ی بعدی راه کار مناسبتری در این باره ارائه خواهد شد .

با آرزوی موفقیت

نویسنده: علی شکرالهی
منبع: جزیره برنامه نویسی وب سایت توسینسو
هرگونه نشر و کپی برداری بدون ذکر نام نویسنده و منبع دارای اشکال اخلاقی است
برچسب ها
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
  • دست شما درد نکنه استاد ایده بسیار جالبی داشت :-)
  • جایی خونده بودم که IE8 به پایین جواب نمیده، فقط هم تا 2 مگابایت عکس رو میشه نمایش داد که توی IE9 شده 40 گیگابایت.

برای ارسال نظر ابتدا به سایت وارد شوید