SpringBoot同時支持HTTPS與HTTP的實現(xiàn)示例
1. 背景
有時候SpringBoot需要支持HTTPS,例如一些微信小程序要求必須使用HTTPS。
但是之前開發(fā)的一些接口,還需要使用HTTP,此時就需要同時讓SpringBoot支持HTTPS和HTTP。
本篇來解決這個問題,本人使用SpringBoot版本為<version>2.2.5.RELEASE</version>,其他版本僅供參考哈哈。
2. 制作HTTPS證書
可以直接使用freessl制作免費證書,這個之前我已詳細寫過一篇文章:Tomcat HTTPS證書申請與部署。
使用上文的方法,直到第7步,制作jks文件即可。
3. 讓SpringBoot支持Https
非常簡單,直接在application.yml配置文件中添加配置即可:
server: port: 7002 #端口 ssl: key-store: C:\tomcat.jks key-password: 123456 key-store-type: JKS
注意key-store值為jks文件地址,key-password為制作證書過程中的密碼。
此時啟動SpringBoot項目,會發(fā)現(xiàn)已經(jīng)在7002端口支持HTTPS請求了。
4. 讓SpringBoot同時支持HTTP
配置文件中的端口server.port目前代表的是HTTPS協(xié)議的端口號,我們還需要再手工添加一個HTTP協(xié)議支持的端口號。
直接在啟動類中添加如下代碼:
@Bean public ServletWebServerFactory servletContainer() { TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory(); Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); connector.setPort(7001); tomcat.addAdditionalTomcatConnectors(connector); return tomcat; }
再次啟動項目,可以通過7001訪問HTTP接口啦。
5. 小結(jié)
SpringBoot同時支持HTTPS和HTTPS非常簡單,極大的方便了我們的開發(fā)測試工作。
到此這篇關(guān)于SpringBoot同時支持HTTPS與HTTP的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)SpringBoot支持HTTPS與HTTP內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot配置SSL同時支持http和https訪問實現(xiàn)
- SpringBoot2.x配置HTTPS訪問的過程
- 在Nginx服務器上安裝SSL證書完成HTTPS請求的步驟詳解(springboot項目)
- SpringBoot詳細講解異步任務如何獲取HttpServletRequest
- Java項目開啟遠程調(diào)試的方法步驟(tomcat、springboot)
- Springboot jar包遠程調(diào)試詳解
- SpringBoot項目設(shè)置斷點debug調(diào)試無效忽略web.xml問題的解決
- SpringBoot配置HTTPS及開發(fā)調(diào)試的操作方法
相關(guān)文章
MyEclipse如何將項目的開發(fā)環(huán)境與服務器的JDK 版本保持一致
我們使用MyEclipse開發(fā)Java項目開發(fā)中,偶爾會遇到因項目開發(fā)環(huán)境不協(xié)調(diào),導致這樣那樣的問題,在這里以把所有環(huán)境調(diào)整為JDK1.6 為例,給大家詳細介紹MyEclipse如何將項目的開發(fā)環(huán)境與服務器的JDK 版本保持一致,需要的朋友參考下吧2024-04-04Springboot使用redis實現(xiàn)接口Api限流的示例代碼
本文主要介紹了Springboot使用redis實現(xiàn)接口Api限流的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07Java實現(xiàn)快速排序算法(Quicktsort)
這篇文章主要介紹了Java實現(xiàn)快速排序算法(Quicktsort),有需要的朋友可以參考一下2013-12-12