Im использует Laravel 5.3 и пытается обрабатывать все распространенные исключения из app\Exceptions\Handler.php
внутри render()
. Я хочу сохранить сеанс var и сам проверить его на контроллере.Laravel 5.3 - Обработка NotFoundHttpException
Например: TokenMismatchException
, он хорошо работает так:
if($excp_class == 'Illuminate\Session\TokenMismatchException'){
return redirect($request->fullUrl())->with('TokenError', 'CSRF');
}
Однако для NotFoundHttpException
, я не могу показаться, чтобы получить сеанс сохранить значение.
if(stristr($excp_class, 'NotFoundHttpException')!=false)
{
//return redirect()->route('XYZRoute')->with('TokenError', 'NotFound'); //Also tried `withError`
\Request::session()->put('TokenError', 'NotFound'); //not working
\Request::session()->save();
return back();
}
Что мне здесь не хватает?
Вы получаете исключение PHP? Я не думаю, что есть метод 'withError' для' RedirectResponse'. Существует метод 'withErrors' (множественное число), который ожидает результат проверки (MessageProvider), но это не то, что вы здесь. Я думаю, что просто «с (« TokenError »,« NotFound ») - это то, что вы хотите. – jszobody
'With' также не работает. Ive пробовал много способов поставить сессию здесь, кстати. –
Тогда вам нужно объяснить, что «не работает». Ваш исходный код выглядел так, что это вызвало бы исключение PHP. Объясните, что происходит, как вы пытаетесь получить доступ к ошибке ... подробнее. – jszobody