راکت
حل شده

لاگین با شماره موبایل

4 پاسخ

سلام
خسته نباشید
من میخوام کدی بنویسم که کاربر بتونه با شماره موبایل لاگین کنه و بعد یک کد براش ارسال بشه و کاربر اون کد رو وارد کنه و وارد سامانه بشه
میخوام ببینم چطور میشه کدی بنویسم که کاربر برای درخواست دادن برای دریافت کد محدودیت داشته باشه و مثلا در یک ساعت فقط ۴ بار بتونه کد وارد کنه و در غیر ابنصورت به مدت ۲۴ ساعت محدود بشه برای دریافت کد
ممنون میشم راهنماییم کنید دوستان

ثبت پرسش جدید

پاسخ‌ها

4
محمدحسن یگانه
محمدحسن یگانه
@mhyeganeh

تخصص: Full-Stack Web Developer Freelancer

بهترین پاسخ

مفهوم کلی چیزی که دنبالش هستید بهش میگن Rate Limitting
و در لاراول هم این قضیه به زیباترین شکل ممکن پیاده سازی شده که می‌تونید توضیحات و مثال هاش رو اینجا بخونید:
https://laravel.com/docs/9.x/rate-limiting

بصورت جزئی تر و برای این نیاز خاص هم که اشاره کردید بهترین راهکار به نظرم استفاده از میدل ور throttle به شکل زیر هست:

Route::post('request-code', [SampleController::class, 'request_code' ])
    ->middleware('throttle:5,10');;

با تعریف میدل ور به شکل بالا برای route که میخواهید کد ارسال کنید، لاراول اجازه ۵ درخواست در هر ۱۰ دقیقه رو به هر کاربر میده و اگر تعدادش بیشتر شد جلوش رو با ارور 429 - Too many requests میگیره.عددهاش رو هم منطقا و بنابه نیازتون می‌تونید تغییر بدید.

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

مشکات
مشکات
@meshkat315

تخصص: کاراموز

@endworld
خیلی سپاسگزارم از راهنماییتون
اما این لینک در مورد اون قسمت سوالم برای محدود کردن کاربر در فرستادن کدهای اشتباه ، توضیحی نداده بود
ممنون میشم در این مورد راهنماییم کنید🌺

شاید پاسخ شما همین‌جا باشد

مشکات
مشکات
@meshkat315

تخصص: کاراموز

@mhyeganeh
خیلی خیلی ممنونم از راهنماییتون🌺🌱

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام