یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام روزبخیر
من یک middleware ایجاد کردم که هدر request رو میگیره ویکسری عملیات انجام میده و مقدار بازگشتی رو میخوام به middleware بعدی ارسال کنه و پس از پردازش در middleware بعدی در نهایت دیتا به کنترلر ارسال بشه.
این نمونه کد middleware اول هستش که یک مقداری در متغیر $callback ذخیره شده و میخوام به Middleware بعدی ارسال بشه :
$request = $request->attributes->add(['headerMiddlewareCallback' => $callback]);
return $next($request);
با اضافه کردن attribute به request میتونم دیتای callback رو در کنترلر بخونم ( زمانی که Middleware دوم رو صدا نمیزنم ) ولی در Middleware دوم نمیشه و ارور دارم
اینم متن اروری که برام میاد :
argument 1 passed to App\Http\Middleware\Api\VerifyUser::handle() must be an instance of Illuminate\Http\Request, null given, called in /var/www/idc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php on line 167
ممنون میشم راهنمایی کنید
سلام روزت بخیر
نه متد add مقدار مورد نظر رو بازگشت میداد چون توی controller میتونستم دریافتش کنم
ولی مشکل رو حل کردم دلیلشم این بود که داشتم متغیر request رو بعد از add کردن میریختم تو request که مقدارش میشد نال
اینجوری حل شد :
$request->attributes->add(['headerMiddlewareCallback' => $callback]);
return $next($request);
مرسی از پاسخت
سلام عزیز
خطای شما میگه داری null ارسال میکنی به متد
قبل از return next یک dd مقدار request$ رو بگیرید ببینید مقدار دهی شده یا خیر
حدس میزنم متد add شما به درستی مقداری رو بازگشت نمیده.
سلام روزت بخیر
نه متد add مقدار مورد نظر رو بازگشت میداد چون توی controller میتونستم دریافتش کنم
ولی مشکل رو حل کردم دلیلشم این بود که داشتم متغیر request رو بعد از add کردن میریختم تو request که مقدارش میشد نال
اینجوری حل شد :
$request->attributes->add(['headerMiddlewareCallback' => $callback]);
return $next($request);
مرسی از پاسخت
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟