OAuth Popup Flow Design - обработка полных перенаправлений без Window.pener или надежное окно.Javascript

Форум по Javascript
Ответить
Anonymous
 OAuth Popup Flow Design - обработка полных перенаправлений без Window.pener или надежное окно.

Сообщение Anonymous »

Мой вопрос связан с дизайном одной реализации, поэтому я надеюсь, что я найду здесь соответствующий! Поток работает следующим образом: < /p>

Кнопка в главном окне открывает всплывающее окно для URL-адреса провайдера OAuth. С небольшой страницей HTML /JS. < /li>
Эта страница отправляет результат обратно в главное окно. Не работая (Pipedrive только в настоящее время, Salesforce работает нормально):
Если пользователь не вошел в систему, всплывающее окно выполняет полностраничный перенаправление (через домены), что приводит к: < /p>
window.opener === null (не может использовать Postmessage) < /p>
propupup. Видимый)
Некоторые обходные пути , которые я нашел:
Я переключился на использование BroadcastChannel со страницы обратного вызова, например:
const channel = new BroadcastChannel('oauth-channel');
channel.postMessage({ type: 'oauth-success', data: ... });
< /code>
Проблема теперь с FroadcastChannel, у меня нет надежного способа обнаружения того, закрыл ли пользователь вручную всплывающее окно (щелкнул «X») - потому что: < /p>
Я не могу использовать всплывающее окно. Обработка oauth rougin через всплывающее окно, которое удовлетворяет: < /p>

Полная поддержка перенаправления OAuth2 (даже поперечный кроссоригин) < /p>
< /li>
, способ различения успеха, неудачи и, если пользователь закрыл, по всему п. /> < /ol>
Заранее спасибо :) < /p>

Подробнее здесь: https://stackoverflow.com/questions/796 ... r-or-relia
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»