ssl-Java发送https请求报错

问题描述

Java发送https请求报错
    KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
            FileInputStream instream = new FileInputStream(new File(KEYSTORE_FILE_PATH));
    //
    //          try {
        //  trustStore.load(instream, KEYSTORE_PASSWORD.toCharArray());
    //          } finally {
    //              instream.close();
    //          }

            // Trust own CA and all self-signed certs
            //SSLContext sslcontext = SSLContexts.custom().loadTrustMaterial(trustStore, new TrustSelfSignedStrategy()).build();
     //         SSLContext sslcontext = SSLContexts.custom().loadTrustMaterial(null, new TrustSelfSignedStrategy()).build();
            // Allow TLSv1 protocol only
     //         SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext,
    //                          new String[] { "TLSv1" }, null,
    //                          SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
    //          httpClient = HttpClients.custom().setSSLSocketFactory(sslsf).build();
    //之前用过证书,后来证书有问题就没有用了,用的是任意url都信任的方式,如下:

     SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {
                 public boolean isTrusted(X509Certificate[] chain,
                                 String authType) throws CertificateException {
                     return true;
                 }
             }).build();

             SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext);
             CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(sslsf).build();
                        HttpPost httpPost = new HttpPost("https://localhost:8080/login");
                        httpClient.excute(httpPost);

报错如下:javax.net.ssl.SSLException: hostname in certificate didn't match: !=

解决方案

java 发送 https请求
java发送https的请求
java发送https请求

解决方案二:

hostname in certificate didn't match

所用的证书不是这个host对应的,验证失败

解决方案三:

这里有一个同样问题,参考:http://my.oschina.net/sourcecoding/blog/80698

时间: 2024-09-20 20:32:34

ssl-Java发送https请求报错的相关文章

IOS 发送图片异步请求报错

问题描述 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** setObjectForKey: key cannot be nil'RT 发送图片请求报错  不知道哪里问题 执行到第737行 就报了~!发送文字信息已经完成 没有问题  就是发送图片 解决方案 messageBody构造有问题.检查检查看看,应该是哪个参数没传进去值吧.解决方案二:打印了 有数据啊

ios-求助 iOS https适配 我用的AFNetworking ssl验证的那个函数报错..

问题描述 求助 iOS https适配 我用的AFNetworking ssl验证的那个函数报错.. AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; //1.管理器[manager setRequestSerializer:[AFHTTPRequestSerializer serializer]];manager.responseSerializer.acceptableContentTypes = [NSSet s

httpclient请求报错javax.net.ssl.SSLException

问题描述 httpclient请求报错javax.net.ssl.SSLException 有没有大神知道如何解决 javax.net.ssl.SSLException: Received fatal alert: protocol_version 解决方案 http://blog.csdn.net/lihenair/article/details/17441169 看下是一个原因不?> 解决方案二: 你的ssl版本是不是不能被服务器接受,安全问题等 解决方案三: 看着像是SSL安全问题呀

ssl- https双向认证请求报错,bad_certificate

问题描述 https双向认证请求报错,bad_certificate javax.net.ssl.SSLHandshakeException: Received fatal alert: bad_certificate at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) at sun.security.ssl.Alerts.getSSLException(Alerts.java:154) at sun.security.ssl.

java发送HttpClient请求及接收请求结果过程的简单实例_java

一. 1.写一个HttpRequestUtils工具类,包括post请求和get请求 package com.brainlong.framework.util.httpclient; import net.sf.json.JSONObject; import org.apache.commons.httpclient.HttpStatus; import org.apache.http.HttpResponse; import org.apache.http.client.methods.Htt

传智播客网上图书商城项目,注册时发送邮箱验证码报错,求助

问题描述 传智播客网上图书商城项目,注册时发送邮箱验证码报错,求助 严重: Servlet.service() for servlet UserServlet threw exception java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at cn.itcast.servlet.BaseServlet.service(BaseServlet.java:60) at javax.servlet.htt

证书-http中发送https请求的问题

问题描述 http中发送https请求的问题 我的项目中登录时候访问http,8080端口的,但是为了安全,在所有的请求中需要发送https,8443端口的请求,现在就回出现一个问题就是正常访问https8443端口的时候是需要在浏览器中导入客户端证书的,但是我们想要直接在后台默认的把这个证书导入,这样就可以保证不用用户去导入客户端证书就可以访问了,哪位大神有没有什么好的解决办法呢? 解决方案 解决https请求(页面)下发送http请求问题ruby发送http,https请求在C#用HttpW

java 连接异常-java 启动jdbc 事务报错 嵌套异常

问题描述 java 启动jdbc 事务报错 嵌套异常 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC

mysql案例:Java程序访问Mysql报错

mysql案例:Java程序访问Mysql报错'OPTION SQL_SELECT_LIMIT=XXX' [环境描述] mysql版本: 5.6.14-56-log Percona Server (GPL) 程序: 使用JDBC驱动mysql-connector-java访问mysql数据库 [报错信息] 程序访问mysql执行SQL语句的时候报错: You have an error in your SQL syntax; check the manual that corresponds t