我创建了一个Ionic应用程序。我有一些要订购的物品。付款使用Paypal完成。我使用window.open(url)调用了一个web url,它将我重定向到了Paypal。
我能够成功付款,但任何人都可以告诉我如何在成功付款后回到我的离子应用程序。
注意:我没有使用Paypal插件,因为它不是为windows开发的
答案 0 :(得分:1)
在付款完成后加载页面时,使用InAppBrowser的loadsart事件来捕获网址。然后,您可以根据需要根据这些网址及其参数处理您的任务。例如,当您有付款成功网址后,您可以在关闭打开的浏览器后导航回您的应用。此外,您可以在付款成功或失败时将数据传回给您的应用程序,使用这种方式。希望这对你有所帮助。
addEventListener('loadstart', function(event) { var currentUrl = event.url /*do the rest according to the url inside your application */});
我只是在下面添加一个伪代码。
browserRef.addEventListener('loadstart', function(event) {
var param = getParameters(event.url); //Read the parameters from the url
if (isCorrectParameters(param)) { //Check parameters agaist the payment gateway response url
browserRef.close(); // colse the browser
//Handle the success and failed scenarios
if(success){
$state.go('test');
}else{
// handle fail scenario
}
}
});

答案 1 :(得分:1)
几天前,即使我遇到了同样的问题,我也能够在 ionic 应用程序拖到第三方 api 的情况下进行付款,但付款后它没有重定向到移动/智能手机中的 ionic 应用程序。 在 soing dome R 和 D 之后,我得到了解决方案,即当应用程序在移动设备上运行时,它不会在即 http://localhost/dashboard 而不是 http:localhost:8100/dashboard 上运行任何端口号,其中 8100 是离子服务器运行的端口号。
在将返回 url 指定为 http://localhost/dashboard 后,我能够重定向回 ionic 应用程序。