Задать вопрос
ThreegunD
@ThreegunD

Middleware-возврат json строки?

Есть кнопка добавления товара,добавлять могут только авторизованные пользователи.
AJAX-запросом происходит добавление, запрос натыкается на middleware и нужно в случае неудачи вернуть ошибку.
Собственное в документации только про redirect написано,но мне редирект не подходит.

p.s. мои мысли на этот счёт такие: Нужно выбросить исключение, сделать обработчик этого исключения и он уже вернёт код ошибки например.Верно хоть думаю или как это реализовать?
  • Вопрос задан
  • 368 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Loftschool
    Комплексное обучение PHP
    6 недель
    Далее
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
Решения вопроса 1
При AJAX запросе будет возвращен 401 Unauthorized а не редирект. Обрабатывайте ответ при ошибках.

Всетаки нет.
Лучше написать собственный мидлвейр, например:
public function handle($request, Closure $next)
    {
        if ($this->guard->guest()) {
            if ($request->ajax() || $request->wantsJson()) {
                return response('Unauthorized.', 401);
            } else {
                return redirect()->guest(URL::route('auth'));
            }
        }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы