Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 客户使用Paypal付款,并立即离开网站,导致他无法获得商品_Reactjs_Paypal_Payment - Fatal编程技术网

Reactjs 客户使用Paypal付款,并立即离开网站,导致他无法获得商品

Reactjs 客户使用Paypal付款,并立即离开网站,导致他无法获得商品,reactjs,paypal,payment,Reactjs,Paypal,Payment,我正在使用paypal与在我的网站上获得付款。 我在我的沙盒帐户上测试了一些东西,并意识到如果客户付费,则在启动成功功能之前有大约3秒钟的时间窗口 onSuccess={() => { this.props.handlePaymentComplete(); }} 问题是,如果客户在3秒钟内付款并退出我的网站,他将被收取费用,但该功能不会启动,因此他的信息不会保存到数据库中 我很确定react-paypal-button

我正在使用paypal与在我的网站上获得付款。 我在我的沙盒帐户上测试了一些东西,并意识到如果客户付费,则在启动成功功能之前有大约3秒钟的时间窗口

           onSuccess={() => {
             this.props.handlePaymentComplete();
           }}
问题是,如果客户在3秒钟内付款并退出我的网站,他将被收取费用,但该功能不会启动,因此他的信息不会保存到数据库中


我很确定react-paypal-button-v2有问题,但我找不到一个合适的方法将paypal与react连接起来。有办法解决这个问题吗?

成功是不好的,这是一个坏例子,不应该是默认的

有一种方法应该可以很好地工作

                    onApprove={(data, actions) => {
                        // Capture the funds from the transaction
                        return actions.order.capture().then(function(details) {
                            // Show a success message to your buyer
                            alert("Transaction completed by " + details.payer.name.given_name);
                        });
                    }}
但是,这都是客户端的,在保存到数据库中之前,仍然容易受到潜在中断的影响


真正的解决方案是将其扩展为服务器端集成,这通常通过两个服务器端路由完成,这两个路由调用PayPal API:“设置事务”和“捕获事务”,如下所述:


与这些路由配对的前端在这里,您可以将其应用于JSX:

,它像魔术一样解决了问题。我原以为这是一个复杂得多的解决方案,但我猜是我的错,没有阅读整个文档。