آفلاین
user-avatar

عملیات پس از لاگین فوری

3 سال پیش
توسط Farshidpg آپدیت شد
آفلاین
user-avatar
ابر سیاه ( 3026 تجربه )
3 سال پیش

سلام دوستان
می خواهم تابعی پس از هر لایگین درون وب انجام بشود مثلا این تابع پس از لایگین ثبت نام و همچنین لاگین ورود و لاگین ریست پسورد و.... اجرا شود چه طور می شود این کار رو انجام داد ؟
البته اصلا در api نمی خواهم اجرا شود

خیلی برام فوری است
لطفا راهنمایی فرمایید

تشکر

آفلاین
user-avatar
Farshidpg ( 6266 تجربه )
3 سال پیش

اگر برای لاگ گرفتن میخوایید به نظرم از یک میدل ور استفاده کنین بهتره اما اگر بخوایید مجزا برای همه این قسمت ها تابعی رو فراخوانی کنین باید به ترتیب
باید داخل این متد ها تابع مورد نظر رو اجرا کنین که پینشهاد میکنم اگر به تابع شما کار سنگینی انجام میشه یا برای ارسال ایمیل و . sms میخوایید استفاده کنین اون رو در قالب یک job بنویسید و با استفاده از queue . اجرا کنین که سرع ت و پاسخ گویی عملیات و اکشن های معمولی و پیشفرض وابسته به اجرای تابع شما نباشه که ارور یا تاهیر ایجاد کنه .

بعد از لاگین از صفحه لاگین در LoginController.php داخل متد : authenticated

بعد از ثبت نام : RegisterController.php انتهای متد create

بعد از ریست پس ورد :
framework/src/Illuminate/Foundation/Auth/ResetsPasswords.php

متد resetPassword

قبل از اجرای $this->guard()->login($user);

برای اجرا در وب هم این رو در نظر بگیرید که کلا route ihd mf fhdv شحه . جدا باشند و پروسه لاگین هم در وب کاملا متفاوته با لاگین در api شما در api باید توکن ست منی باری هر کاربر ( passport ) به پیشنهاد خود لاراول برای احراز هویت در api هستش .

یا باز اگر به هر طریقی دارید از روت مشترک استفاده میکنین اوتی اون تابع یا job یا Trait باید یه شرط بذارید که اگر از api بود اجرا نشه در غیر این صورت اجرا بشه .

برای مثال اگر درخواست ایجکس بود اجرا بشه که یعنی از یک app تحت موبایل یا یک app سرویس گرای سمت وب درخواست فرستاده شده به api که باز برای این چک کردن هم میتونین یک میدل ور ایجکس تعریف کنین و اون رو توی constrauctor کلاس مورد نظر قرار بدید

برای ارسال پاسخ باید وارد سایت شوید