چگونه با ASP.NET MVC کد کپچا بسازیم؟ پیاده سازی یک 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 جهت ایجاد تصاویر زیاد وجود داره که در مقاله ی بعدی راه کار مناسبتری در این باره ارائه خواهد شد
بنیانگذار توسینسو و توسعه دهنده
علی شکرالهی، بنیانگذار TOSINSO ، توسعه دهنده وب و برنامه نویس موبایل، مهندسی نرم افزار از دانشگاه آزاد اسلامی واحد کرج ، بیش از 15 سال سابقه ی فعالیت های حرفه ای و آموزشی
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود