带有 Angular 应用程序的 Paypal 返回网址

Posted

技术标签:

【中文标题】带有 Angular 应用程序的 Paypal 返回网址【英文标题】:Paypal return url with Angular app 【发布时间】:2015-09-04 09:10:31 【问题描述】:

这是我的 router.js 的一部分:

  .state('app.thanks', 
        url: "/thanks",
        views: 
          'menuContent': 
            templateUrl: "templates/thanks.php"
          
        
      )

并且在 payapl WEBSITE PAYMENT PREFERENCES -> return url 地址中我定义了这个: https://my-website-url.com/#/app/thanks,

据我了解,为了从 Payapl 获取参数,我需要使用此代码来获取交易 ID:

if(isset($_GET['tx']) && ($_GET['tx'])!=null && ($_GET['tx'])!= "") 
    $tx = $_GET['tx'];
    if($tx) doSometing();

else 
    exitCode();

如何将它与我的 Angular 应用程序结合使用?只需要把这段代码放在我的Thanks.php页面吗?

谢谢!!

【问题讨论】:

【参考方案1】:

您无法使用 Angular 应用程序执行此步骤。 这必须非常清楚,因为您需要使用 Paypal 验证交易和付款。要正确地做到这一点,代码必须在服务器上运行并验证支付过程实际上是成功的,否则你可以免费分发你的产品。您没有在此处添加任何代码来执行此操作,因此我希望您准备好一个可以正确执行此操作的代码。

在服务器上验证交易后,您自己的脚本可以将用户重定向到 Angular 应用程序上的正确位置。 所以你的设置和脚本应该和这个类似 -

网站支付偏好 -> https://my-website-url.com/paypalVerify.php

if ( isset($_GET['tx']) && $_GET['tx'] ) 
    $tx = $_GET['tx'];
    if(verifyTx($tx)) 
        //do some stuff
        header('Location: https://my-website-url.com/#/app/thanks');
        die();
       

header('Location: https://my-website-url.com/#/app/wheresMyMoney');
die();

【讨论】:

以上是关于带有 Angular 应用程序的 Paypal 返回网址的主要内容,如果未能解决你的问题,请参考以下文章

带有 angularjs 的 Paypal API

如何从贝宝获得成功或失败响应?

使用braintree PayPal Dropin的Angular不会触发提交事件

PayPal Rest API、firebase 函数和 Angular 6 出现 CORS 错误

Paypal:Angular Js paypal 按钮未重定向到付款页面

PayPal 快速结帐在 MVC .net 中以 html 形式返回响应