Java 对等端未通过身份验证

标签 java ssl ssl-certificate oauth-2.0 soundcloud

我正在尝试通过设置 SoundCloud 获取 OAuth,但我遇到了很多麻烦。我的最新一期是这样的:

我让用户通过连接到 SoundCloud 的弹出窗口登录。用户登录后,它会返回一个代码。一切正常;但是,下一步对我来说是失败的。获得代码后,我将运行这段 Java 代码:

URI redir = new URI("http://localhost:9000/auth/soundcloudcapturetoken");
ApiWrapper api = new ApiWrapper(SC_CLIENT_ID, SC_CLIENT_SECRET, redir, null, Env.SANDBOX);
Token authToken = api.authorizationCode(code);

Java 在 api.authorizationCode(code) 行失败并出现以下错误:

SSLPeerUnverifiedException occured : peer not authenticated

我在网上四处窥探,偶然发现了这篇文章:http://davidjb.com/blog/2012/02/java-http-request-fails-with-javax-net-ssl-sslpeerunverifiedexception-peer-not-authenticated

它建议我将提到的两个证书添加到我的 java cacerts 文件中。我将这两个证书添加到我的 jdk 和 jre,但我的应用程序仍然失败并出现相同的错误。我在这里缺少什么吗?

作为旁注,我目前正在使用此 api 访问 SoundCloud:https://github.com/soundcloud/java-api-wrapper

最佳答案

此处为 SoundCloud 开发人员。

您是否正在尝试使用沙箱(即连接到 https://api.sandbox-soundcloud.com)?如果是这样,我在尝试重现您的问题时才意识到我们的该主机证书已过期,我们正在部署新证书,对此我们深表歉意。

此外,您还可以在我们的邮件列表中找到 SoundCloud 工程师的帮助:http://bit.ly/yqcubH

关于Java 对等端未通过身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9541989/

相关文章:

java - 数据提取 Tar 和 7z

java - 在哪里检查值并抛出异常

ssl - 没有用于 MQ channel 的 SSL 或 TLS 证书(从终端运行 - Windows 10)

java - 使用 HTTPS(不受信任的证书)访问带有 Java 的网站时出现问题

ssl 证书- 从 csr 获取私钥

git - SourceTree 和 Stash : Unable to get local issuer certificate

java - Java 中使用 set 和 get 方法的掷骰子程序

java - 无法在 javaFX 项目中启动应用程序

ssl - 基于 SSL 的 MariaDB 无法正常工作, "certificate verify failed"

java - SSLException : hostname in certificate didn't match: <50. 19.233.255> != <*.heroku.com>