繁体   English   中英

如何使用Paypal PHP SDK从沙盒上线

[英]How to go live from sandbox with Paypal php SDK

切换为使用我的活动密钥后,出现401错误。 我收到401错误invalid_client客户端身份验证失败。

使用PayPal PHP SDK时,我需要遵循哪些步骤才能从沙盒切换到实时?

PHP SDK的官方github页上提供的信息部分正确。

所需的两个步骤是:

  • 更新您的密钥和秘密
  • 确保您的配置设置为“实时”

但是,由于一切都在开箱即用的沙箱中运行,而无需任何配置,而只需要按键,因此没有有关创建配置文件或通过代码设置配置的说明。

您有两个选项可以设置实时站点配置:

  1. 创建$ apiContext时通过代码设置配置。 请参见下面的代码示例:

     $apiContext = new \\PayPal\\Rest\\ApiContext( new \\PayPal\\Auth\\OAuthTokenCredential( $this->client_id, // ClientID $this->client_secret // ClientSecret ) ); $apiContext->setConfig( array( 'mode' => 'LIVE', 'log.LogEnabled' => true, 'log.FileName' => '../PayPal.log', 'log.LogLevel' => 'INFO', // PLEASE USE `INFO` LEVEL FOR LOGGING IN LIVE ENVIRONMENTS ) ); 
  2. 通过sdk_config.ini文件设置配置。 请注意,SDK专门查找文件名“ sdk_config.ini”。 您可以在\\ PayPal-PHP-SDK \\ paypal \\ rest-api-sdk-php \\ tests \\中重复使用一个示例配置文件

为确保找到并正确加载sdk_config.ini文件,您有两个选择。 如果您使用的是bootstrap.ini文件,则可以定义一个常量PP_CONFIG_PATH,SDK将使用该常量来查找sdk_config.ini文件的位置。

上面的\\ tests \\位置中还包含一个示例引导程序文件,其中包含定义PP_CONFIG_PATH的示例。

第二个选项是将配置文件放置在此位置“ \\ vendor \\ PayPal-PHP-SDK \\ paypal \\ rest-api-sdk-php \\ lib \\ PayPal \\ Core .. \\ config \\ sdk_config.ini”中已硬编码到SDK中。

注意:github页面上提供的说明建议将模式变量设置为“ live”,但是代码中的switch语句查找“ SANDBOX”或“ LIVE”,并且默认情况下将其设置为“ PayPalConstants :: REST_SANDBOX_ENDPOINT”,在“ \\ lib \\ PayPal \\ Core \\ PayPalConstants.php”中定义

为了帮助调试并确保正确设置了端点,请检查OauthHandler.php文件中的_getEndpoint($ config):77函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM