尝试使用我的沙盒凭据时,API 失败。 但是,如果我使用live,它可以正常工作。 由于此问题,无法运行测试事务。
[root@host]# curl -v https://api.sandbox.paypal.com/v1/oauth2/token -H "Accept: application/json" -H "Accept-Language: en_US" -u "[removed]:[removed]" -d "grant_type=client_credentials" * 即将连接() 到 api.sandbox.paypal.com 端口 443 * 正在尝试 173.0.82.78...连接 * 连接到 api.sandbox.paypal.com (173.0.82.78) 端口 443 * 使用 certpath 初始化 NSS:sql:/etc/pki/nssdb * CAfile:/etc/pki/tls/certs/ca-bundle.crt CA路径:无 * NSS 错误 -12286 * 关闭连接 #0 * SSL 连接错误 卷曲: (35) SSL 连接错误
Curl 错误 35 意味着 SSL 初始握手甚至没有通过,因为 PayPal 返回的响应没有显示为有效的 SSL。例如,如果您尝试连接到端口 80,则会发生这种情况,但事实并非如此。但是,您确实可以访问PayPal服务器。问题不在于 CAfile,因为您尚未达到验证签名的状态。如果收到证书本身,则不会将其识别为有效。 错误 NSS 12286 是:
"无法与对等方安全通信:没有通用加密算法。">
本地和远程系统没有共同的密码套件。这可能是由于两端的配置错误造成的。这可能是由于服务器被错误地配置为使用具有 RSA 密钥交换算法的非 RSA 证书。
它说"没有通用的加密算法",但PayPal甚至没有发回一些密码。我刚刚尝试了您的代码,它对我来说非常好用。如果错误是缺少 CA 证书,您将看到握手,打招呼,然后看到"SSL 证书问题:无法获取本地颁发者证书"。
如果我有更多的声誉,我只会写评论。这个问题确实应该由PayPal的人来解决。