springboot整合https接口 http重定向到https

新建springboot项目

整体目录如下

生成信任证书文件   进入到JDK的bin目录下,执行语句: cmd黑窗口     设置密钥库口令,一路next。。。是。。。再次输入口令,

keytool -genkey -alias testHttps -keyalg RSA -keysize 1024  -keystore D:\https.jks -validity 90

生成文件 粘贴到resource下边  

application.properties的配置
server.port=8081
server.ssl.key-store=classpath:https.jks
server.ssl.key-store-password=123456
#server.ssl.keyStoreType=PKCS12
server.ssl.keyStoreType=jks

启动项目就可访问   https://localhost:8081/v1/HandlerController/getString?type=12

为了能够使用http也能访问  进行重定向配置  

@Configuration
public class TomcatConfig {
    @Bean
    TomcatServletWebServerFactory tomcatServletWebServerFactory() {
        TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory() {
            @Override
            protected void postProcessContext(Context context) {
                // TODO Auto-generated method stub
                SecurityConstraint constraint = new SecurityConstraint();
                constraint.setUserConstraint("CONFIDENTIAL");
                SecurityCollection collection = new SecurityCollection();
                collection.addPattern("/");
                constraint.addCollection(collection);
                context.addConstraint(constraint);
            }
        };

        factory.addAdditionalTomcatConnectors(createTomcatConnector());
        return factory;

    }
//这里首先配置一个TomcatServletWebServerFactory,然后添加一个Tomcat中的Connector(监听80端口),并将请求转发到8080上去.
//
//配置完成后,在浏览器中输入:"http://localhost/hello",就会自动重定向到https://localhost:8081/hello上。
    private Connector createTomcatConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        connector.setPort(80);
        connector.setSecure(false);
        connector.setRedirectPort(8081);
        return connector;
    }
}

pom如下

<?xml version="1.0" encoding="UTF-8"?>
4.0.0org.springframework.bootspring-boot-starter-parent2.4.0com.examplehttpsdemo0.0.1-SNAPSHOThttpsdemoDemo project for Spring Boot1.8org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-testtestorg.apache.commonscom.springsource.org.apache.commons.codec1.3.0org.apache.commonscom.springsource.org.apache.commons.codec1.3.0org.apache.httpcomponentshttpclient4.3.5org.apache.httpcomponentshttpcore4.4.13com.alibabafastjson1.2.58....junitjunit3.8.1org.hamcrestcom.springsource.org.hamcrest.core1.1.0org.apache.stormstorm-core1.1.0org.apache.httpcomponentshttpclient4.5.1org.springframework.bootspring-boot-maven-plugin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值