Мы пытаемся интегрировать платеж в React с нашим бэкэндом. После успеха hpp.lightbox.init()
он автоматически отправляет браузер на merchantUrl
. Мы не хотим эту функциональность, потому что наше приложение является SPA, поэтому мы не хотим, чтобы пользователь был перенаправлен куда-либо. Вместо этого мы хотели бы отправить его в нашу конечную точку бэкэнда и позволить пользователю перейти к следующему разделу SPA.
Ниже приведен пример кода, который мы использовали.
RealexHpp.setHppUrl("https://pay.sandbox.realexpayments.com/pay");
RealexHpp.lightbox.init("payNowButtonId", "backendUrlRealexWillSendToUponReceivingResponse", jsonFromRequestEndpoint);
В этом примере мы не хотим отправлять на "backendUrlRealexWillSendToUponReceivingResponse"
, но хотели бы получить ответ init()
и сами передать данные на "backendUrlRealexWillSendToUponReceivingResponse"
.
Мы посмотрели на исходный код (строки 350-362) и кажется, что RealexHpp
создает форму, присоединяет форму к DOM, а затем отправляет форму с данными ответа.
Видя это, мы попытались прослушать любые отправленные формы, прослушать создания форм как на document
, так и на window
, но безрезультатно.
Так, как подсказывает заголовок. Как мы можем обработать форму, не отправляя пользователя на другую страницу?