[英]How to go on live from sandbox mode in paypal express checkout php?
[英]How to go live from sandbox with Paypal php SDK
切换为使用我的活动密钥后,出现401错误。 我收到401错误invalid_client客户端身份验证失败。
使用PayPal PHP SDK时,我需要遵循哪些步骤才能从沙盒切换到实时?
PHP SDK的官方github页上提供的信息部分正确。
所需的两个步骤是:
但是,由于一切都在开箱即用的沙箱中运行,而无需任何配置,而只需要按键,因此没有有关创建配置文件或通过代码设置配置的说明。
您有两个选项可以设置实时站点配置:
创建$ 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 ) );
通过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.