spring boot支持https请求(建议收藏)

news2024/9/27 23:31:23

文章目录

  • 前言
  • 一、借助keytools
  • 二、详细步骤
  • 三、配置spring项目支持https
  • 总结


前言

博主个人社区:开发与算法学习社区

博主个人主页:Killing Vibe的博客

欢迎大家加入,一起交流学习~~

众所周知,http是不安全的协议,那么要使服务器支持https,该如何在spring项目中配置呢?

一、借助keytools

正常来说,证书都是CA机构颁发的,但是我们也可以自己借助 Java 自带的 JDK 管理工具 keytool 来生成一个免费的 https 证书,只不过这种证书不被操作系统和浏览器信任罢了。

这个keytools工具在哪呢?

就在JDK的安装目录下的bin包下面。

在这里插入图片描述

二、详细步骤

  • 1.在这个bin目录下直接输入cmd,打开命令行窗口:
    在这里插入图片描述

  • 2.输入如下命令:

keytool -genkey -alias anyname -storetype PKCS12 -keyalg RSA -keysize 2048  -keystore D:\httpsKey.p12 -validity 3650

命令含义如下:

keytool: 表示keytool工具
genkey:表示要创建一个新的密钥。
alias:表示 keystore 的别名。anyname 都可以。
storetype:表示密钥的仓库类型,存储格式是PKCS12.
keyalg:表示使用的加密算法是 RSA ,一种非对称加密算法。
keysize:表示密钥的长度。这里是2048.
keystore:表示生成的证书文件存放位置。 这里是D:\httpsKey.p12 ,有时候放C盘可能有权限问题
validity:表示证书的有效时间,单位为天。这里是3650天也就是十年。

  • 3.然后跟着如下图所示一个一个输入就行。

密码以123456为例子:
在这里插入图片描述

  • 4.然后我们就能在D盘看到一个httpskey.p12证书文件
  • 在这里插入图片描述

三、配置spring项目支持https

在我们的项目中找到application.properties 文件
在这里插入图片描述

然后直接输入

server.ssl.key-store=D:\httpsKey.p12
server.ssl.key-store-password=123456
server.ssl.keyStoreType=PKCS12
server.ssl.keyAlias=anyname

在这里插入图片描述

然后运行服务器就可以了。

此时,浏览器地址栏中输入 http://127.0.0.1:8080/ 会导致错误请求:
在这里插入图片描述

咱们只能用https来访问,地址栏输入https://127.0.0.1:8080/,会显示如下:

在这里插入图片描述
这是因为我们自己生成的 https 证书不被浏览器认可,(实际项目中只需要更换一个被浏览器认可的 https 证书即可),我们打开高级,接收并继续就可以了。

由于考虑到 Spring Boot 不支持同时启动 HTTP 和 HTTPS ,为了解决这个问题,我们这里可以配置一个请求转发,当用户发起 HTTP 调用时,自动转发到 HTTPS 上:

参考文章如下:

请求转发

总结

以上就是spring boot支持https请求的详细步骤了,和一些教程不一样,但是其实都是差不多的,我这里省去了不少步骤,更方便快捷~~ 有帮助的话,可以点赞收藏,有什么问题私信博主,感谢支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/170167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OC/Swift 技术 链接跳转外置(内置)Safari/加载网页(源码)

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络&#xff0…

javascript将地址转换为经纬度_调用百度地图API_地址解析

1、注册账号和密钥申请 百度地图 选择,开发文档->javascriptAPI 进入后先进行账号和密钥获取,并且申请成为百度开发者,点击使用方法内的步骤即可跳转 获取服务密钥ak 应用类型选择浏览器端 白名单自己设置:只有白名单中的网站…

【博客595】从linux收包与发包过程看iptables链如何发挥作用

从linux收包与发包过程看iptables链如何发挥作用 1、linux收包过程(以udp包为例) 2、linux发包过程(以udp包为例) 3、收发包过程中iptables的hook如何发挥作用 主要分为三个部分: 接收数据的处理流程是:…

【Kubernetes 企业项目实战】04、基于 K8s 构建 EFK+logstash+kafka 日志平台(中)

目录 一、安装存储日志组件 Elasticsearch 1.1 创建名称空间 1.2 安装 elasticsearch 组件 1)创建 headless service 服务 2)通过 statefulset 创建 elasticsearch 集群 二、安装 kibana 可视化 UI 界面 一、安装存储日志组件 Elasticsearch 1.1 …

django框架全解

目录简介MVC与MTV模型MVCMTV创建项目目录生命周期静态文件配置(无用)启动django路由分组无名分组有名分组路由分发反向解析反向解析结合分组名称空间re_path与path自定义转换器视图HttpRequest常用方法HttpResponseJsonFBV和CBV模板(前后端分…

SpringBoot+VUE前后端分离项目学习笔记 - 【24 服务器安装部署】

本节主要实现服务器购买以及服务部署 PS: 由于没有服务器本节仅做大致流程记录,无实际操作步骤 服务器配置安装 文档:docker安装centos、jdk、mysql、redis… 链接:http://note.youdao.com/noteshare?id6a01550a3acfbafc7cbbea4ae99c0e48&a…

嵌入式Linux-进程间通信

1.进程间通信 1.1 进程间通信的介绍 进程间通信(interprocess communication,简称 IPC)指两个进程之间的通信。系统中的每一个进程都有各自的地址空间,并且相互独立、隔离,每个进程都处于自己的地址空间中。所以同一…

【自学Docker】Docker attach命令

Docker attach命令 大纲 docker attach教程 使用 docker attach 命令可以用来进入到一个正在运行的 Docker容器。docker attach 命令后面的 CONTAINER 可以是容器Id,或者是容器名。 要能够使用 docker attach 的容器必须是正在运行的。 docker attach语法 haic…

# Itext Pdf 5 教程

Itext Pdf 5 教程 Itext Pdf Itext7收费&#xff0c;故使用Itext5传统版&#xff0c;Itext5不再维护 官网&#xff1a;iText 5 |iText PDF Itext5 Java Api 地址&#xff1a;iText 5 Java | iText PDF 依赖 <!-- itextpdf --> <dependency><groupId>c…

视频编辑:VisioForge Video Edit SDK .Net 15.5 标准版 Crack

视频编辑&#xff1a;VisioForge Video Edit SDK .Net v15.5 标准版 Crack,我没有专业版&#xff0c;希望你提供 VisioForge Video Edit SDK .Net 允许程序员轻松地将视频编辑和处理功能集成到他们的软件应用程序中。SDK 允许您使用任何音频和视频文件创建您的电影。您可以为其…

2022年游戏安全风险增长96%,高维作弊对抗激烈

导读&#xff1a;2022年&#xff0c;游戏行业在多种因素影响下遭遇寒冬。但游戏黑灰产规模在迅速壮大&#xff0c;不少游戏饱受其侵扰&#xff0c;越来越多的游戏厂商开始重视游戏安全问题。 为帮助游戏厂商能够清晰、直观地了解当前游戏安全对抗形势&#xff0c;在经过多轮调…

【虹科云展厅专题】虹科赋能汽车智能化云展厅——汽车总线专题

虹科2023年开年福利 聚焦前沿技术&#xff0c;【虹科赋能汽车智能化云展厅】正式上线&#xff0c;本次云展厅围绕“汽车以太网/TSN、汽车总线、智能网联、电子测试与验证、自动驾驶”等核心话题&#xff0c;为您带来如临展会现场般的讲演与介绍&#xff0c;更有技术工程师全程…

机智云DUT实现远程智能鱼池管理系统

一、前言机智云研发的4G DTU在养殖智能系统管理方面优势&#xff0c;此处以智能鱼池管理系统为例。1.实时数据监控机智云智能鱼池养殖智能系统实现对整个鱼池水质的实时监控&#xff0c;无人值守设备状态下运行。为客管理者提供实时异常数据报警信息、实时环境参数波动、实时/定…

nacos的安装部署

文章目录1.nacos的下载2.nacos数据库的建立3.nacos配置文件修改3.1配置文件3.2设置单点登录4.登录nacos网页1.nacos的下载 下载地址&#xff1a; https://github.com/alibaba/nacos/releases 根据自己的需要下载合适的版本。 2.nacos数据库的建立 navicat运行nacos下conf的…

【深度】从链上分析和金融安全角度,看stETH的囚徒困境和Celsius挤兑事件

6月7日开始&#xff0c;以Celsius被曝损失 3.5 万枚 ETH开始&#xff0c;ETH流动性生态乃至整个加密货币市场进入到一个以stETH为中心的流动性囚徒困境之中&#xff0c;而这也造成了对Celsius等加密货币“银行”挤兑现象的发生。 SharkTeam将从事件的起源开始&#xff0c;也就…

拆解“算力偏科”难题,智算中心下一步向何处去?

十年前&#xff0c;英国《经济学人》曾用工业用电量为主的指标来评估中国GDP&#xff0c;而现在算力已经成为新的指标。似乎每个企业、每个城市都在努力增加算力。一位读者不无困惑地留言&#xff0c;大家都说自己算力有多少FLOPS&#xff0c;能支撑这个大模型、那个大数据&…

九龙证券|北上资金连续10日“跑步入场”,1月净流入已逼近2022全年

1月以来&#xff0c;北上资金净流入规划已接近2022全年。 半导体概念股集体大涨 1月17日&#xff0c;沪指缩量小幅调整&#xff0c;收跌0.1%&#xff1b;深成指涨0.13%&#xff0c;创业板指收涨0.24%&#xff0c;科创50涨逾1%。 板块方面&#xff0c;半导体及元件板块继续走强…

基于.NetCore+React单点登录系统

更多开源项目请查看&#xff1a; 一个专注推荐.Net开源项目的榜单 对于有多个应用系统的企业来说&#xff0c;每一个应用系统都有自己的用户体系&#xff0c;这就造成用户在切换不同应用系统时&#xff0c;就要多次输入账号密码&#xff0c;导致体验非常不好&#xff0c;也造成…

【vue系列-07】vue脚手架的基本使用

深入理解脚手架的使用一&#xff0c;vue脚手架的基本使用1&#xff0c;vue-cli安装2&#xff0c;vue项目中的文件组成3&#xff0c;render配置项4&#xff0c;ref属性5&#xff0c;props属性6&#xff0c;mixin属性7&#xff0c;scope属性一&#xff0c;vue脚手架的基本使用 在…

vsftpd使用指北

vsftpd使用指北 文章目录vsftpd使用指北1.安装vsftpd2.登录3.切换本地路径下载命令&#xff1a;get用于下载单个文件&#xff1a;mget用于批量下载&#xff1a;上传命令&#xff1a;FilezillaReferencevsftpd 是“very secure FTP daemon”的缩写&#xff0c;是一个完全免费的、…