在将我的应用程序(使用 Omnipay/PayPal)从测试服务器移动到生产服务器时,我遇到了一些麻烦。
PayPal-Payment 在测试服务器上运行良好。但是我在生产服务器上不断收到“10002”-错误(“身份验证/授权失败 - 您无权进行此 API 调用)。两个系统上的 PayPal API 凭据是相同的 - 所以我想肯定有一些差异在两台机器之间(一台是本地 MAMP 设置,另一台是托管虚拟服务器)导致此问题。
你以前遇到过这样的事情吗?
提前感谢您的支持
我能够自己解决这个问题。似乎在某些服务器上,PHP 的 http_build_query(Omnipay/PayPal 使用它来构建查询字符串)使用“&”作为参数分隔符,因此您必须手动将其设置为“&”以防止身份验证错误. 见:http ://www.php.net/manual/en/function.http-build-query.php#102324