【问题标题】:Razorpay checkout form stuck on loading in webviewRazorpay 结帐表单卡在 webview 中加载
【发布时间】:2020-08-01 12:53:51
【问题描述】:

我有一个集成了 Razorpay 的网页,我想在 webview 应用程序中使用它。一切正常,但是当我在 razorpay 表单中选择付款方式时,它卡在加载中,并且永远不会打开下一个屏幕询问是成功还是失败(测试模式)。

代码:

var options = {
            "key": "rzp_test_UIYCZTZXgkmZtu",
            "amount": (totalAmount*100).toString(), // Amount is in currency subunits. Default currency is INR. Hence, 50000 refers to 50000 paise
            "currency": "INR",
            "name": "test payment :)",
            "description": "Test Transaction",
            "image": Logo,
            "order_id": res.data.orderID,
            "handler": function (response){
                alert("payment successful! :)")
            },
            "prefill": {
                "name": "xyz",
                "email": "xyz@abc.com",
                "contact": "000000000"
            },
        }
        const paymentObject = new window.Razorpay(options)
        paymentObject.open()

它适用于网站,但不适用于 Web 视图。我错过了什么吗?

【问题讨论】:

  • 您是否在打开 Modal 之前加载 razorpay 脚本?
  • 如果能贴出完整的功能供参考就好了
  • 面临同样的问题。在 web 浏览器中工作正常,但在 webview 中,测试模拟诊断日志永远不会出现。因此,Netbanking 付款也无法正常工作,因为它们打开了一个新窗口。希望有人能回复。

标签: android node.js reactjs webview razorpay


【解决方案1】:

这是一个部分可行的解决方案。主要问题是 Razorpay 对话框尝试打开一个新窗口以显示成功/失败,而您的 webview 不允许打开新窗口。

在 Android 上,以下帮助:

myWebView.getSettings().setSupportMultipleWindows(true);
myWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

如果您希望在单独的 web 视图中打开窗口,试试这个:https://stackoverflow.com/a/27010225/583875

或者在单独的浏览器中,试试这个:https://stackoverflow.com/a/49029609

【讨论】:

    猜你喜欢
    • 2018-11-11
    • 1970-01-01
    • 2020-01-17
    • 2021-06-27
    • 2020-04-27
    • 2017-01-10
    • 2020-05-23
    • 2020-09-28
    • 2022-09-29
    相关资源
    最近更新 更多