直到今天,我已经使用新的 PayPal PHP SDK 成功开发了 PayPal 的沙箱,该 SDK 预先配置为使用此沙箱 URL:
https://api.sandbox.paypal.com/2.0/
(Chrome 中的 URL 当前返回:“错误 107 (net::ERR_SSL_PROTOCOL_ERROR):SSL 协议(protocol)错误。”)
但是今天我的 webapp 由于 SSL 握手失败而崩溃:
./paypal-sdk-1.0.92/lib/PPHttpConnection.php:185 中未捕获异常“PPConnectionException”,消息为“error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure”
自昨天(当我的网络应用程序最后一次运行时)以来发生的唯一事件是我重置了我的沙盒“卖家”帐户,这可能重置了 API 凭据 according to this post .由于我已经手动更新了 API 凭据,并验证了它们是正确的,所以我现在不能说它们是否有误。
经过大量搜索,我发现其他网络文章说 URL 应该是:
https://api-3t.sandbox.paypal.com/2.0/
(Chrome 中的 URL 返回 SOAP 响应。)
所以我将 PayPal PHP SDK 的包含 URL 从 https://api.sandbox.paypal.com/2.0/ 更改为至 https://api-3t.sandbox.paypal.com/2.0/它再次完美运行。这里发生了什么?非“3t”沙盒 URL 现在是否简单地损坏了?
编辑:收到@Win 和@JoelP 的反馈后,我提交了一份bug report through the PayPal SDK github因此 PayPal 的某个人可以解释今天发生了什么变化,并修复 SDK 以在使用签名凭据时具有正确的 URL。
编辑 2: PayPal fixed the issue几天之前。它将在下一个版本中可用。 https://github.com/paypal/SDKs/issues/22#issuecomment-8660682
感谢大家的帮助。
最佳答案
关于PayPal Sandbox API SSL握手错误突然开始使用PayPal PHP SDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12412547/