在将我的应用程序(使用Omnipay / PayPal)从测试服务器移动到生产服务器时,我遇到了一些麻烦。
PayPal-Payment在testserver上运行正常。但是我一直在生产服务器上得到“10002” - 错误(“身份验证/授权失败 - 您没有权限进行此API调用”)。 PayPal API凭证在两个系统上都是相同的 - 所以我猜两台机器之间必须存在一些差异(在本地MAMP设置上,另一台是托管虚拟服务器)导致这种情况。
你以前遇到过这样的事吗?
预先感谢您的支持
答案 0 :(得分:1)
我能够自己解决这个问题。 似乎在某些服务器上,PHP的http_build_query(由Omnipay / PayPal用于构建查询字符串)使用“& amp”作为参数分隔符,因此您必须将其设置为“&”手动以防止身份验证错误。 请参阅:http://www.php.net/manual/en/function.http-build-query.php#102324