【问题标题】:Paypal: going Live from sandboxPaypal:从沙盒上线
【发布时间】:2015-02-10 00:11:49
【问题描述】:

我已经对此进行了一段时间的头脑风暴,最后我决定在这里提出一个问题。

我正在使用 PayPal-PHP-SDK (restAPI) 处理付款。而且我无法让它进入实时端点(api.paypal.com)并且总是进入沙盒(api.sandbox.paypal.com

Progress:使用沙盒凭据(clientIdclientSecret) 'bootstarp.php' 和 'mode' 在 'sdk_config.ini' 中设置为 'sandbox'成功完成了多个沙盒交易并完成了项目的所有其他部分。现在唯一的部分就是让它上线,这实际上是该项目的致命弱点。

我的尝试:我已将沙盒凭据替换为来自客户端的实时凭据。他从https://developer.paypal.com/webapps/developer/applications/myapps 获得,然后在应用程序下点击'show' Live Credentials。我还在 'sdk_config.ini' 中将 mode 更改为 live。但它仍然将我带到沙盒端点。

编辑:在 bootstarp.php 中创建 api 上下文时,我还设置了一种模式,代码如下。

$apiContext->setConfig(
    array(
        'mode' => 'live',
        'http.ConnectionTimeOut' => 30,
        'log.LogEnabled' => true,
        'log.FileName' => '../PayPal.log',
        'log.LogLevel' => 'FINE',
        'validation.level' => 'log'
    )
);

任何人都可以建议我在这里缺少什么,因为我没有错误可以调试并进一步查看。如需任何帮助或建议,请提前致谢。

【问题讨论】:

    标签: php paypal paypal-sandbox


    【解决方案1】:

    你是否改变了 bootstrap.php 中的模式?看来您可以使用 bootstrap.php 或 sdk_config.ini 文件中的配置,但不能同时使用两者。如果您将 sdk_config.ini 路径注释掉如下(来自 bootstrap.php 文件),请确保将模式设置为存在于 bootstrap.php 文件中

    // Register the sdk_config.ini file in current directory
    // as the configuration source.
    /*
    if(!defined("PP_CONFIG_PATH")) {
        define("PP_CONFIG_PATH", __DIR__);
    }
    */
    

    【讨论】:

    • 刚才试过了,还是需要沙箱。
    【解决方案2】:

    这可能更适合作为对 Mike Miller 解决方案的评论,但我没有足够的代表,抱歉。​​

    我在五分钟前从 Paypal API 沙盒迁移到 live,使用您的问题和 Mike 的回答来获取有关如何执行此操作的信息。

    我唯一改变的是 bootstrap.php 中 clientIdclientSecret 的值,以及 mode(从“沙盒”到'live'),就像你在问题中提出的那样。根据 Mike 的回答,我根本没有编辑 'sdk_config.ini' 文件,并且无论如何都注释掉了路径。

    我注意到您将“bootstrap.php”文件称为“bootstarp.php” - 这与它没有任何关系,是吗?

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题,但我无法解决。

      我并不为我的解决方案感到自豪,因为它一点也不优雅,但它开始销售了。

      我修改了文件PayPalConstants.php(位于...\PayPal-PHP-SDK\paypal\rest-api-sdk-php\lib\PayPal\Core\PayPalConstants.php

      我刚刚将沙盒路由更改为实时路由:

      const REST_SANDBOX_ENDPOINT = "https://api.paypal.com/";
      
      const OPENID_REDIRECT_SANDBOX_URL = "https://www.paypal.com/webapps/auth/protocol/openidconnect";
      

      【讨论】:

        猜你喜欢
        • 2017-04-01
        • 1970-01-01
        • 2016-11-17
        • 2014-05-08
        • 2016-05-23
        • 2013-05-03
        • 2017-04-19
        • 2015-11-25
        • 2020-11-29
        相关资源
        最近更新 更多