java发送请求-http和https

http和https区别

1、http是网络传输超文本协议,client---- http------ server

2、https=http+ssl证书,让网络传输更安全 ,client---- http+ssl------ server

3、ssl证书是需要客户端认可的,注意官方证书和jdk生成的证书的用户来使用区别


第一步信任所有证书+创建ssl网络连接对象

引入建立连接的源码类

有3个构造方法使用

查看源码作用-建立网络链接ssl

client---- http+ssl------ server

这个源码有4个参数,传入这4个参数,就能创建ssl网络连接对象


看构造-没有好用的方法

引入新的类builder为生成器,可以生成sslcontext

因为.build方法的返回值就是sslcontext,所以我们调用build函数

得到第一个参数sslcontext,需要在这个参数里传入信任证书的代码

需要有关联性

继续分析sslcontextbuilder类,这里其他的构造方法获取密钥等不能使用,可用的是loadTrustMaterial(信任证书材料)

这个方法是一个接口,是信任证书的过程

入参是接口类,所以需要找子类

找子类,其中可使用方法是第2个

看看这个类是做什么的

我接受你所有的证书,因为我是认可你的

最终代码

优化

信任所有的证书


第2个参数

抽象类不能直接使用,但我们需要这个域名的参数

新的方法找域名,网站地址,

把域名代码写出


new sslconnectionsocketfactory看里面的参数

支持协议,密码

协议支持的协议版本,密码没人会给,也拿不到就为null

调整顺序后

补充返回值

优化代码

最终的笔记


相关推荐
DP DPharness1 小时前
StudyMate 从安装到第一节课的完整操作路径
人工智能·websocket·网络协议·智能手机·dpharness
剑锋所指,所向披靡!4 小时前
HTTP服务器的基本相关概念
服务器·网络协议·http
2301_777998345 小时前
TCP协议:滑动窗口与流量控制
服务器·网络·网络协议·tcp/ip·php
Lsetea7 小时前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
wangbing11257 小时前
开发指南148-WebSocket-前端查报文
网络·websocket·网络协议
liangshanbo12159 小时前
前端高级面试题:WebSocket 双向流式通信怎么设计?
前端·websocket·网络协议
可乐鸡翅yeah_10 小时前
新手梳理:HLS 线上问题,哪些该提给 CDN,哪些该找后端切片服务
开发语言·前端·javascript·vue.js·网络协议·http·m3u8在线
网络小江10 小时前
上网第四十一课:从输入网址到页面显示——一次完整的网络之旅
网络协议
m0_7381858211 小时前
Flutter 鸿蒙化实战:http_proxy 适配 OpenHarmony,HTTP 代理
flutter·http·华为·harmonyos·鸿蒙
灯澜忆梦11 小时前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio