我尝试使用paypal/rest-api-sample-app-php包来确定问题是否出在我的代码中。显然它不是..。所以我试着:
curl -v https://api.sandbox.paypal.com/v1/oauth2/token我收到了一个错误。这是我在cmd上运行的:
C:\Users\Eliya Cohen>curl -v https://api.sandbox.paypal.com/v1/oauth2/token
* Trying 173.0.82.78...
* Connected to api.sandbox.paypal.com (173.0.82.78) port 443 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
* CAfile: C:\Program Files\cURL\bin\curl-ca-bundle.crt
CApath: none
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS alert, Server hello (2):
* SSL certificate problem: unable to get local issuer certificate
* Closing connection 0
* TLSv1.2 (OUT), TLS alert, Client hello (1):
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.这是我的curl-ca-bundle.crt文件:http://pastebin.com/RZ6EaxTF
发布于 2015-06-28 04:45:48
您在pastebin中提供的cert文件包含必要的根证书。这意味着您要么不使用粘贴箱中给出的CA文件,要么在您与paypal的连接中有一些中间盒,它执行SSL拦截。这可能是中间人攻击,但更常见的是公司内部的SSL拦截,以便公司可以分析恶意软件的加密流量。如果您在一家公司内部,请与您的网络管理员核实。
发布于 2016-02-08 15:42:13
我也收到了同样的错误,但是在tomcat服务器中启用ssl之后,它就消失了。返回您应该使用的url。
https://stackoverflow.com/questions/31092911
复制相似问题