Springboot与微信小程序

2021/5/17 12:25:37

本文主要是介绍Springboot与微信小程序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Springboot与微信小程序

做了一个微信小程序的项目,后端使用springboot,部署时需要部署ssl证书前后端之间使用https请求

1. 申请ssl证书

申请链接:https://www.trustauth.cn/marketing/freessl.html

申请后使用fullchain.crt来完成以下步骤。


2. 合成证书
因为springboot内置的有tomcat,所以ssl证书部署选择tomcat方式,因此需要合成jks证书

合成证书链接:https://www.trustauth.cn/SSLTool/tool/export_keystore.jsp

在这里插入图片描述


3. Tomcat上部署ssl证书

复制已正确合成的www.AAA.jks文件到Tomcat安装目录下的conf目录,使用文本编辑器打开conf目录下的server.xml文件(操作前备份server.xml,以备错误时恢复)找到并修改以下内容,我使用的是8.5的tomcat,不同版本的tomcat配置不太相同

<Connector port="9293" SSLEnabled="true" maxThreads="150" protocol="org.apache.coyote.http11.Http11NioProtocol">

<SSLHostConfig>

<Certificate type="RSA" certificateKeystorePassword="1234567890" certificateKeystoreFile="conf/www.AAA.jks"/>

</SSLHostConfig>

</Connector>

最后保存该配置文件,然后重启Tomcat后再次访问即可。

默认的SSL访问端口号为443,如果使用其他端口号,则您需要使https://域名:port的方式来访问自己的站点,防火墙要开放相应的端口。


4. springboot配置https
将证书放置在resources文件夹下,书写相应的配置。

server.port=9292
server.ssl.enabled=true
server.ssl.key-store=classpath:www.AAA.jks
server.ssl.key-store-type=JKS
server.ssl.key-store-password=1234567890

5. http转https

在启动类中写

@Bean
    public TomcatServletWebServerFactory servletContainer() {
        //		TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory() { ... }

        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory() {
            @Override
            protected void postProcessContext(Context context) {
                SecurityConstraint securityConstraint = new SecurityConstraint();
                securityConstraint.setUserConstraint("CONFIDENTIAL");
                SecurityCollection collection = new SecurityCollection();
                collection.addPattern("/*");
                securityConstraint.addCollection(collection);
                context.addConstraint(securityConstraint);
            }
        };
        tomcat.addAdditionalTomcatConnectors(connector());
        return tomcat;
    }

    @Bean
    public Connector connector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        connector.setPort(httpPort);
        connector.setSecure(false);
        connector.setRedirectPort(httpsPort);
        return connector;
    }



这篇关于Springboot与微信小程序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程