首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有GET请求的SSL中的异常,使用带有Kimono实验室的授权比勒标头

带有GET请求的SSL中的异常,使用带有Kimono实验室的授权比勒标头
EN

Stack Overflow用户
提问于 2015-02-12 05:02:08
回答 2查看 1.1K关注 0票数 1

我正在开发一个移动应用程序,通过Kimono实验室解析来自JSON对象的数据。在访问Kimono实验室的API时,我遇到了SSL和证书方面的问题。

根据Kimono实验室的说法,调用API需要在调用时设置头部“授权:承载”头。

使用GET请求调用auth的GET请求就像调用任何和服api一样,但您还需要在身份验证请求头中传递安全令牌,如下所示:授权:承载{YOUR_SECURE_TOKEN}

我使用下面的代码来获取InputStream

代码语言:javascript
复制
HttpUriRequest request = new HttpGet(apiURL);
request.addHeader("authorization", "Bearer " + securityToken);
HttpClient httpclient = new DefaultHttpClient();
InputStream is = httpclient.execute(request).getEntity().getContent();

执行这段代码给了我一个例外: javax.net.ssl.SSLPeerUnverifiedException:无对等证书

或者,我尝试用以下代码实现:

代码语言:javascript
复制
URL url = new URL(apiURL);
urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestProperty("Authorization", "Bearer " + securityToken);
urlConnection.setRequestMethod("GET");     urlConnection.setConnectTimeout(activity.getResources().getInteger(R.integer.internet_timeout)); urlConnection.setReadTimeout(activity.getResources().getInteger(R.integer.internet_timeout));
InputStream inputStream = urlConnection.getInputStream();

对于这段代码,我有一个异常javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLHandshakeException信任锚,用于未找到的证书路径。

有什么想法吗?

我能够通过允许通过CustomTrustManager和CustomAllVerifier返回所有尝试的所有证书来解决这个问题,但是听说这是完全不安全的,不推荐用于生产。我的情况是这样的吗?

提前谢谢你。

EN

回答 2

Stack Overflow用户

发布于 2015-02-12 05:29:02

在使用和服和api构建node.js时,我遇到了完全相同的问题。问题是中间签名证书不受Mozilla的信任,因此将抛出一个叶错误。

我通过执行以下操作来解决这个问题,找到正在使用的证书,下载它的pem并在执行对和服的请求之前将它添加到您的根CA中,这比禁用TLS/SSL安全检查安全得多。

票数 0
EN

Stack Overflow用户

发布于 2015-02-17 02:08:38

只是提醒一下!原来这是和服服务器的暂时问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28469665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档