Unsere Anwendung ist eine einseitige Anwendung, die mit ExtJs erstellt wurde. Für jede Benutzeraktion wird die Browser-Registerkarte nie neu geladen und alle Aktionen werden mit ajax ausgeführt. Ein Benutzer kann mehrere ExtJs-Fenster/-Panels innerhalb derselben Browser-Registerkarte öffnen/schließen, und auf diese Weise bleibt alles auf die gleiche Browser-Registerkarte beschränkt.Wie integriert man Payment Gateway in Anwendungen, die mit JavaScript-Frameworks wie ExtJs erstellt wurden?
Jetzt müssen wir Zahlungs-Gateway in der Anwendung integrieren, was bedeutet, den Benutzer auf die Bank-Website umleiten und sie zurück zu unserer Anwendung gebracht haben.
Das Problem ist, dass, wenn Browser den Benutzer umleitet, dann alle Anwendung Javascript-Code zusammen mit Panels und Windows zerstört, und wenn der Benutzer kommt zurück zur Anwendung dann findet sie es anders als eine sie verließ.
Als Lösung für dieses Problem, wir dachten an folgenden zwei appraoches mit:
Option 1. den Stand der Anwendung pflegen - Wenn der Benutzer für die Website der Bank verlässt dann halten wir irgendwie den Zustand der Anwendung - wie welche Fenster geöffnet werden, welche welche Daten tragen, welche Variablen welche Werte haben usw .. und wenn der Benutzer zurückkehrt, erzeugen wir denselben Anwendungsstatus für sie.
Option 2. Haben Sie ein Browser-Pop-up-Fenster für Payment-Gateway - Wir beabsichtigen, einen Knopf zu schaffen, die ein kleines Pop-up-Fenster geöffnet die Transaktionsdetails tragen, und in diesem Pop-up-Fenster der Der gesamte Prozess des Zahlungs-Gateways wird stattfinden, wobei auf die Umleitung und alles andere geachtet wird.
Option 1 erweist sich als sehr umständlich und kompliziert, da es nicht möglich ist, den genauen Zustand beizubehalten.
Für Option 2 sind wir nicht sicher, ob dies sicher und möglich ist?
Hat jemand einen solchen Ansatz früher implementiert. Was können wir sonst noch tun?
Vielen Dank für jede Hilfe im Voraus.
Vielen Dank für Ihre Freigabe von Pop-up-Fenster. Interessant zu finden, dass Sie websocket/polling für die Benachrichtigung des übergeordneten Fensters verwenden. Wir planen tatsächlich, eine Funktion im übergeordneten Fenster beim Entladen/Schließen des untergeordneten Fensters für diese Benachrichtigung aufzurufen, wenn ein Popup-Ansatz gewählt wird. Haben Sie das auch ausprobiert und Probleme gefunden, die Sie zur Wahl der Websocket-Option führten? – netemp
@netemp Das Ziel war es, sie von Anfang an völlig getrennt zu halten. Deshalb habe ich mich auf diesen Ansatz konzentriert. Es war mehr eine Designsache als irgendein bekanntes Problem. – sra
Danke für den erwähnten Punkt. Könnten Sie auch mitteilen, dass Sie mit Pop-Blockern Probleme hatten? Hatten Sie Beschwerden, dass Pop-ups generell von den Browsern blockiert werden und daher vermieden werden sollten? – netemp