SpringBoot项目安装SSL协议

1.背景

        最近遇到一个工作场景,在帆软服务器中通过js调用http接口,帆软填报表单提交时通过接口的方式通知到用户。过程中遇到一个问题,由于帆软服务器是https认证的,导致访问http接口时不通,最终通过在springboot中安装SSL协议解决。

2.帆软表单提交js

FR.Msg.confirm("提示", "确定要提交该需求吗?",
  function(value) {
    if (value) {
      $.ajax({
        type: 'GET',
        url: 'https://finemsg.aaa.bb:9090/MsgSend/sendNewMsgToProduct?productNo=123&devName=aa&devNo=456&requirementName=cc',
        data: null,
        success: function(res) {
        	alert(222);
        }
      });
      _g().verifyAndWriteReport();
    }
  }, 100);

注:通过js代码请求接口服务器,请求方式为GET。

3.开发接口代码

新建springboot项目,根据需求开发相关逻辑,此处代码省略,后面会介绍配置证书的相关步骤

4.申请域名和证书,并增加DNS解析

此部分工作有公司网络组同事完成,申请的二级域名为finemsg.aaa.bb(示例),所提供的的证书格式如下:

1)安装openssl服务

yum -y install openssl

2)通过Linux 下的 openssl 工具生成.p12 格式的证书

openssl pkcs12 -export -clcerts -in enn2022.cer -inkey enn.key -out server.p12

 3) 输入两次密码,并将生成的server.p12文件拷贝到桌面

5.打开SpringBoot项目,添加证书配置

1)将server.p12文件拷贝到resources目录下

2)修改application.properties文件

server.port=9090

server.ssl.enabled=true
server.ssl.key-store=classpath:server.p12
server.ssl.key-store-password=mypass
server.ssl.key-store-type:PKCS12

3)修改pom文件,增加plugin标签

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-resources-plugin</artifactId>
     <configuration>
          <encoding>UTF-8</encoding>
          <nonFilteredFileExtensions>
              <!-- 避免 https 证书文件被修改 -->
              <nonFilteredFileExtension>p12</nonFilteredFileExtension>
              <nonFilteredFileExtension>pkcs12</nonFilteredFileExtension>
          </nonFilteredFileExtensions>
     </configuration>
</plugin>

6.部署项目,并测试接口

将代码打包放到目标服务器上,并通过命令启动。提交帆软表单,进行测试。

nohup java -jar requirement-0.0.1-SNAPSHOT.jar &
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值