Goal: описать как можно реализовать редирект в обход ограничений браузера
Проблема: в браузере есть защита от неправомерных действий пользователя, которая реализуется при помощи специального свойства у событий - является ли действие результатом userinput или иницированно со стороны js. Из-за этого механизма защиты, если мы получаем данные для редиректа с задержкой, мы не можем открыть новую табу или сменить адрес страницы, потому что срабатывает механизм защиты.
В текущем флоу есть проблема, в том, что на шаге 6 мы делаем JS редирект\открытие новой вкладки. Если проходит больше 4 секунд после клика, то браузер считает что открытие вкладки не связанно с userinput и запрещает.
Мы хотим изменить поведение сервера, чтобы на шаге 5 возвращался http 3xx редирект на урл. То есть мы на шаге 4 открываем новую вкладку, внутри которой урл запроса на бекенд, который может длиться долго, и заканчивается редиректом на конечную платежку.
Почему это решение? У браузера лимит на ожидание ответа от сервера 60 секунд, если за это время ответ прийдет - редирект будет совершен. К серверной имплементации нет требований о подтверждении userinput, т.к. фактчиески мы сразу открыли страницу, по клику человека, а далее уже просто ожидаем пока сервер разбереться с задачей (браузеру ок, что сервер может медленно формировать ответ)