Есть ли веская причина не использовать редирект при помощи js в Laravel?
В проекте используется blade для отрисовки страницы, но фронтэнд разработчик в одной из форм вставил диалоговое окно, возникающее при нажатии на кнопку "submit" (сохранение страницы), в котором вводится доп поле формы (задумка дизайна). При этом он при помощи js осуществляет переход по нужному роуту, а потом пытается редиректить страницу, но функция, вызывающаяся при переходе на заданный роут выполняет свои действия по сохранению страницы и подразумевает редирект на вьюху списка страниц своими штатными силами laravel, но js мешает это сделать и требует, чтобы функция вернула ответ, после которого он сам вызовет редирект на новый роут.
Мне как бекенд разработчику такой подход не понравиля и я потребовал от фронтэндщика, чтобы он оставил зону ответственности за переход по нужному роуту мне, а сам в своём окне получал бы параметр, добавлял бы его значение в скрытое поле формы и передавал управление кнопке "submit".
Мои доводы за мой подход в том, что мы должны саии штатным способом внутри контроллера делать редирект и передавать еще нужные параметры туда, а не использовать посредника в виде js. И что блейд шаблон может поменяться и в нем может не быть js скрипта, а моя логика от этого не должна меняться.
Еще можете подсказат какие доводы или всё же фронтэндщик прав? Вёртку делает он, мои данные переменных, передаваемых в blade он использует, но вот такие еще инициативы берёт на себя.
Дополнительно:
Содержание
никто не прав, почему переход по роуту в JS не возможен?
функция, вызывающаяся при переходе на заданный роут выполняет свои действия по сохранению страницы
Что-то плохое, почему гет запрос что-то сохраняет? Это плоха практика
но js мешает это сделать и требует, чтобы функция вернула ответ, после которого он сам вызовет редирект на новый роут.
Зачем js ждет ответа? Там еще что-то происходит? Вообще плохо выглядит. Зачем в браузере ждать ответа и выполнять переход, если сервер сразу может перенаправить на нужную страницу.
Ответы:
архитектура у системы есть ? втом смысле что бы описать зоны ответственности кто где и за что отвечает. Судя по вопросу нет и это плохо. Надо написать, утвердить и дальше всем пользоваться.
А по сути вопроса - отправить запрос, получить ответ, посмотреть на него а потом решить куда и как дальше идти - нормальная логика для фронта.
Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.
Оставить комментарий Отменить
Ответы
- Есть ответ! к записи Как уменьшить масштаб меньше 100% в Windows 10 (22H2)
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Как называется человек, который дизайн придумает для сайта и сверстает его?
- Есть ответ! к записи Можно ли установить Яндекс.Диск на АльтЛинукс?
- Есть ответ! к записи Картинки мутные только на сафари, есть выход?
- Есть ответ! к записи Keenetic. Как настроить SSTP клиент с сертификатом?
- Есть ответ! к записи Чем заменить executor в aiogram 3?
Да, есть веская причина не использовать редирект при помощи JavaScript в Laravel. Во-первых, Laravel предоставляет встроенные методы для управления перенаправлениями, такие как метод `redirect()`, который позволяет легко выполнять редирект на другие страницы. Использование JavaScript для редиректа может привести к нежелательным последствиям, таким как проблемы с безопасностью и SEO.
Когда вы используете JavaScript для редиректа, это может создать проблемы с поисковой оптимизацией (SEO), поскольку поисковые роботы могут не смочь правильно проиндексировать ваш сайт из-за редиректа через JavaScript. Это может привести к снижению позиций вашего сайта в поисковой выдаче.
Кроме того, использование JavaScript для редиректа может сделать ваш сайт менее доступным для пользователей с ограниченными возможностями, так как некоторые пользователи могут иметь отключен JavaScript в своих браузерах или использовать устройства, не поддерживающие JavaScript.
Таким образом, если у вас нет конкретной необходимости использовать JavaScript для редиректа, рекомендуется придерживаться стандартных методов, предоставляемых Laravel, чтобы обеспечить безопасность, SEO и доступность вашего сайта.