Зачем yii2-authclient использует js редирект на returnUrl пользователя?

Что весьма странно и не всегда срабатывает, т.к. на мобильном версии с js бывают проблемы, пользователи часто рефрешат страницу и получают ожидаемую ошибка. Не лучше ли делать перенаправление средствами бэкэнда?
  • Вопрос задан
  • 474 просмотра
Решения вопроса 1
igorbelikov
@igorbelikov
Fullstack Developer
Посмотрел исходники и вот что нашел.
function popupWindowRedirect(url, enforceRedirect)
{
    if (window.opener && !window.opener.closed) {
        if (enforceRedirect === undefined || enforceRedirect) {
            window.opener.location = url;
        }
        window.opener.focus();
        window.close();
    } else {
        window.location = url;
    }
}
popupWindowRedirect(<?= Json::htmlEncode($url) ?>, <?= Json::htmlEncode($enforceRedirect) ?>);

Как я понял, то там происходит проверка открыто ли у пользователя попап окно (где он авторизируется) и если нет, то его просто перенаправляют на успешную страницу после авторизации.
То есть причина в попап окне.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы