weixin_42256326 2021-04-17 17:34 采纳率: 50%
浏览 289
已采纳

java从https地址下载文件到本地,本地代码运行正常,部署到服务器提示连接超时

从https网络地址下载文件到本地,写的java工具类在我本地测试可以,代码部署到服务器就会提示连接超时,上个月部署到服务器还可以正常下载,现在不知道为什么会报超时,我的下载类实现的是X509TrustManager,跟证书有关系吗,为什么我本地测试可以下载,用服务器谷歌浏览器访问https地址也可以得到下载文件,请问有大佬知道是什么原因吗,求解

TrustManager[] tm = { new HttpsDownload() };
            // 创建SSLContext
            SSLContext sslContext = SSLContext.getInstance("SSL", "SunJSSE");
            // 初始化
            sslContext.init(null, tm, new java.security.SecureRandom());
            // 获取SSLSocketFactory对象
            SSLSocketFactory ssf = sslContext.getSocketFactory();
            // url对象
            URL url = new URL(urlStr);
            // 打开连接
            HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();

  • 写回答

1条回答 默认 最新

  • 张小帅和刘美美 2021-04-17 19:22
    关注

    就是证书ssl的问题,选择忽略它 代码版本比较多,你多百度几个版本的试试吧。 我之前也遇到过,就是只是某个环境有问题

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    悬赏问题

    • ¥15 Jupyter Notebook 数学公式不渲染
    • ¥20 ERR_CACHE_MISS 确认重新提交表单
    • ¥20 关于vba使用HTMLfile执行js函数问题
    • ¥60 悬赏求解,通过实时现场摄像头的视频图像识别其他对家打出的麻将牌,识别麻将牌,识别牌墙位置,通过识别对家打出了什么牌
    • ¥15 关于#GPU jetson#的pcie驱动开发问题,如何解决?
    • ¥15 stm32f103zet6 串口5无法收发数据
    • ¥15 关于C语言使用线程队列实现多线程并发
    • ¥15 这个运行,错误在哪里呀,大家看看吧,教导我
    • ¥15 advanceinstaller对话框设置
    • ¥100 正常上网,内部网页无法打开