【问题标题】:Omnipay/PayPal 10002 - Authentication failed on one server, fine on another oneOmnipay/PayPal 10002 - 一台服务器上的身份验证失败,在另一台服务器上正常
【发布时间】:2014-02-18 20:01:54
【问题描述】:

将我的应用程序(使用 Omnipay/PayPal)从测试服务器移动到生产服务器时遇到了一些麻烦。

PayPal-Payment 在测试服务器上运行良好。但我在生产服务器上不断收到“10002”错误(“身份验证/授权失败 - 您无权进行此 API 调用)。 两个系统上的 PayPal API 凭据是相同的 - 所以我猜两台机器之间肯定存在一些差异(一台是本地 MAMP 设置,另一台是托管虚拟服务器)导致这种情况。

你以前遇到过这样的事情吗?

提前感谢您的支持

【问题讨论】:

  • 哦,我忘了:我已经在两台服务器上尝试了 Omnipay-Example-Script,结果相同。在我的测试服务器上工作,生产系统上的错误消息。

标签: paypal omnipay


【解决方案1】:

我能够自己解决这个问题。 似乎在某些服务器上,PHP 的 http_build_query(Omnipay/PayPal 使用它来构建查询字符串)使用“&amp”作为参数分隔符,因此您必须手动将其设置为“&”以防止身份验证错误. 见:http://www.php.net/manual/en/function.http-build-query.php#102324

【讨论】:

  • 未来读者请注意:您的pull request 已在 Omnipay 中修复了此问题。此外,这可能会导致不仅仅是omnipay 的问题,因此我建议将ini_set('arg_separator.output', '&'); 行添加到您的应用程序的开头。
猜你喜欢
  • 2010-12-30
  • 1970-01-01
  • 2017-05-24
  • 2014-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多