Завершите оплату с помощью window.open - PullRequest
0 голосов
/ 24 января 2019

Я использую платежный процессор, который дает мне URL-адрес для отправки пользователю.Я могу указать параметры success_url, cancel_url, на которые пользователь будет перенаправлен после оплаты.Проблема в том, что мое приложение - приложение реакции, и я не хочу перезагружать страницу.Я хочу создать поток, в котором URL страницы оплаты будет открываться с помощью window.open, а из приложения React я мог бы отслеживать состояние платежа с помощью window.postMessage.Это правильный подход для этого сценария?

1 Ответ

0 голосов
/ 24 января 2019

Похоже, что это должно работать нормально, если URL-адреса пост-обработки находятся в том же домене, что и окно открывания.Я также добавил бы ответ об успехе / неудаче обратно в новое окно и вызвал бы window.close, чтобы всплывающее окно исчезло.

Меня беспокоит только то, что блокировщики всплывающих окон могут блокировать всплывающее окно, но такПока вы вызываете window.open в результате действия пользователя (например, щелчка), оно должно работать нормально.

Решение, которое должно обойти эту проблему, состояло бы в том, чтобы вы открыли ссылку в iframe настраница - с остальной частью потока то же самое (рукопожатие window.postMessage, затем удалите iframe) - но если обработчик платежей использует какое-то удаление iframe, то это не будет работать.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...